事件坐标:screenX,clientX,pageX,offsetX的区别

e.screenX/e.screenY:
事件发生时鼠标相对于电脑屏幕的坐标。e.screenX,e.screenY的最大值不会超过屏幕分辨率。

e.clientX/e.clientY:
事件发生时鼠标在浏览器内容区域的坐标。
浏览器内容区域就是浏览器窗口中用来显示网页的可视区域,不包括滚动条和工具栏,也不随滚动条的移动而移动。
当浏览器窗口缩小时,e.clientX/e.clientY的最大值也会缩小。

e.pageX/e.pageY:
事件发生时鼠标相对于整个页面的坐标。整个页面是说整个网页的区域。

e.offsetX、e.offsetY:
事件发生时鼠标相对于事件源元素的坐标,事件源元素就是绑定事件的那个元素。

图示:

事件坐标:screenX,clientX,pageX,offsetX的区别