您的位置:首页 > 其它

跟随鼠标移动的div框

2015-05-30 22:07 295 查看
事件对象event和传入参数cv解决兼容性问题

event.clientX和event.clientY得到的是相对于页面的坐标,当滚动条向下移动时,则出现定位不准,所以要加上滚动条的高度

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
#div1{width:100px; height:100px; background:#0F0; position:absolute;}
</style>
<script>
function getPos(ev)//将鼠标定位定义成函数
{
var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
var scrollLeft=document.documentElement.scrollLeft||document.body.scrollLeft;
return {x:ev.clientX+scrollLeft,y:ev.clientY+scrollTop};
}
document.onmousemove=function(ev)//给文档添加移动事件
{
var oEvent=ev||event;
var oDiv=document.getElementById('div1');
var pos=getPos(oEvent);
oDiv.style.left=pos.x+'px';//为left赋值
oDiv.style.top=pos.y+'px';
}
</script>
</head>

<body>
<div id="div1"></div>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: