如何獲取鼠標在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