日期:2014-05-16  浏览次数:20356 次

javascript中获取当前鼠标的坐标
在获取当前鼠标坐标时因为参照物的不同,浏览器的兼容,导致在使用时总是觉得混乱,今天在看到一段总结整理下来,方便使用。

获得当前鼠标的坐标,根据参照物的不同,分为以下几套坐标系。

一套是以当前浏览器的可视区为参照物(clientX,clientY),另一套是以显示器的屏幕为参照物(screenX,screenY)。

此外微软还有一套坐标系(x,y),它是相对于触发事件的对象的offsetParent的。

火狐有另一套坐标系(pageX,pageY),它是相对于当前网页的。

1 var getPosition=function(e){
2 e=e||window.event;
3 var x=e.pageX||(e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft));
4 var y=e.pageY||(e.clientY+(document.documentElement.scrollTop||document.body.scrollTop));
5 return {'x':x,'y':y};
6 }
(clientX,clientY)的坐标系,不受滚动条影响,如图: