JavaScript:关于scroll,client,offset

117 阅读1分钟

总结:

在window上的属性:

 pageXOffset // (滚动条所在的X距离)
 ​
 innerWidth //(可视区的宽)
 ​
 screenX //(浏览器窗口左边框距离整个屏幕左边框的距离)
 ​
 scrollTo //(滑动块定位到...)
 ​
 scrollBy//(滑动块定位到...)
 ​
 scroll  //(滑动块移动x,y距离)

在节点对象上:

 scrollWidth = scrollLeft //(content + padding)//兼容ie8
 scrollHeight = scrollTop //(content + padding)//兼容ie8
 ​
 clientLeft //(border)
 clientWidth//(content+padding)
 ​
 offsetLeft //(距离定位元素的left/top)
 offsetWith //(content + padding + border)
 offsetParent  //(带定位的父节点)
在事件对象上:
e.pageX  //可视窗口上鼠标点击的位置x坐标(窗口坐标,随着页面滚动而改变)

e.clientX //可视窗口上鼠标点击的位置x坐标(文档坐标,即不随页面滚动而改变)

e.offsetX //元素上鼠标点击的位置的x坐标(参考点为元素的左content+padding,点击边框可能会产生负值)

e.layerX  //等于offsetX,用于兼容fireFox。 

e.screenX //相对于屏幕鼠标点击的位置的X坐标