clientX、pageX、offsetX、screenX的区别
程序员文章站
2022-04-26 08:13:18
...
这几个属性的区别说难不难,可是很容易搞混,很长一段时间没用,发现又忘记区别了,记不清哪个是哪个!真的很抓狂!
区别:
clientX、clientY:
相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性。
pageX、pageY:
类似于clientX、clientY,但它们使用的是文档坐标而非窗口坐标。这2个属性不是标准属性,但得到了广泛支持。IE事件中没有这2个属性。
offsetX、offsetY:
相对于事件源元素(srcElement)的X,Y坐标,只有IE事件有这2个属性,标准事件没有对应的属性。
screenX、screenY:
相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性。
其实这几个的区别很好记的!其实就是英文单词的意思,不过对于广大中国人来说会觉得很迷惑。
client就是客户端,客户端就是浏览器,也就是相对浏览器的坐标。
page就是文档,也就是相对网页的坐标,也就是相对于浏览器可视区域的坐标还要加上滚动条。
offset就是偏移,也就是想相对于源元素的偏移位置。
screen就是屏幕,也就是相对于屏幕的坐标。
这样就好记了~
推荐阅读
-
一张图轻松搞懂javascript event对象的clientX,offsetX,screenX,pageX区别
-
JavaScript中鼠标event的位置(clientX,layerX,x,offsetX等)
-
一张图轻松搞懂javascript event对象的clientX,offsetX,screenX,pageX区别
-
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析_javascript技巧
-
clientX、pageX、offsetX、screenX的区别
-
原生JS与jQuery中事件对象的坐标详解screenX/clientX/pageX/offsetX
-
event.X和event.clientX的区别分析_javascript技巧
-
event.x,event.clientX,event.offsetX区别_javascript技巧
-
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析_javascript技巧
-
event.X和event.clientX的区别分析_javascript技巧