js怎么获取鼠标在div中的相对位置

2017-05-12

大家在做网页的时候都可能会用到鼠标在div中的相对位置,那么怎么获取鼠标在div中的相对位置呢?下面由小编教大家怎么获取鼠标在div中的相对位置吧。

如何获取鼠标在div中的相对位置

代码如下:

<HEAD>

<TITLE> JS获取DIV相对坐标</TITLE>

<script type="text/javascript"><!--

function getX(obj){

var parObj=obj;

var left=obj.offsetLeft;

while(parObj=parObj.offsetParent){

left+=parObj.offsetLeft;

}

return left;

}

function getY(obj){

var parObj=obj;

var top=obj.offsetTop;

while(parObj = parObj.offsetParent){

top+=parObj.offsetTop;

}

return top;

}

function DisplayCoord(event){

var top,left,oDiv;

oDiv=document.getElementById("demo");

top=getY(oDiv);

left=getX(oDiv);

document.getElementById("mp_x").innerHTML = (event.clientX-left+document.documentElement.scrollLeft) -2+"px";

document.getElementById("mp_y").innerHTML = (event.clientY-top+document.documentElement.scrollTop) -2+"px";

}

// --></script>

</HEAD>

<BODY style="margin:40px;" mce_style="margin:40px;">

<div style="background-color:#000000;color:#0011FF;width:300px;height:300px;position:absolute;top:80px;left:90px;margin:0px; border:0px;" id="demo" onmousemove="DisplayCoord(event)">

我是DIV,经测试,有2PX的误差...

</div>

当前鼠标坐标为:

X:<span id="mp_x"></span>

Y:<span id="mp_y"></span>

</body>

</BODY>

</HTML>

如果不对,可以试试将

document.documentElement.scrollLeft

替换成

document.body.scrollLeft

更多相关阅读

最新发布的文章