用JavaScript代码和DOW文档对象实现页面元素跟随鼠标移动

这个案例的关键点在于HTMLElement元素的style属性——标签对象的所有css属性都是用字符串的形式存储的,如果给出一个数值对象,就会产生bug。尤其是位置属性,必须是加上"px"。

<!DOCTYPE html>
<html>
<head>
	<meta charset = "utf-8">
	<title>JS</title>
	<style>
		div { background-color: blue;
		      width: 200px;
		      height: 200px;
		      position: absolute; }
	</style>
	<script src = "script1.js">
	</script>
</head>
<body>
	<div style = "left:600;"></div>
</body>
</html>
<script>
	var div = document.getElementsByTagName("div")[0];
	document.onmousemove = function(event){
		trail(div, 10, 20, event);
	}
</script>

var trail = function(object, x, y, event){
	var pos_x = 0;
	var pos_y = 0;
    // 倒霉的IE
	var e = event||window.event;
	if(e.pageX||e.pageY){
		pos_x = e.pageX;
		pos_y = e.pageY;
	}
	else{
		alert("IE!");
	}
	object.style.position = "absolute";
    // 强制类型转换
	object.style.top = String((pos_y + y)) + "px";
    // 自动类型转换
	object.style.left = pos_x + x + "px";
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值