使用jQuery获取元素位置时,我们会使用position()或offset()方法,两个方法都返回一个包含两个属性的对象-左边距和上边距,它们两个的不同点在于位置的相对点不同。
可以看看下边的图:

从图中我们可以大体看出两者的区别。position()获取相对于它最近的具有相对位置(position:relative)的父级元素的距离,如果找不到这样的元素,则返回相对于浏览器的距离。
offset()始终返回相对于浏览器文档的距离,它会忽略外层元素。
本文介绍了jQuery中用于获取元素位置的两种方法:position() 和 offset()。这两种方法都会返回元素的左边距和上边距,但它们所依据的位置基准不同。position() 方法返回的是相对于最近的具有相对定位的祖先元素的位置;如果没有这样的祖先元素,则相对于文档视口。而 offset() 方法始终返回相对于文档根节点的位置。
使用jQuery获取元素位置时,我们会使用position()或offset()方法,两个方法都返回一个包含两个属性的对象-左边距和上边距,它们两个的不同点在于位置的相对点不同。
可以看看下边的图:

从图中我们可以大体看出两者的区别。position()获取相对于它最近的具有相对位置(position:relative)的父级元素的距离,如果找不到这样的元素,则返回相对于浏览器的距离。
offset()始终返回相对于浏览器文档的距离,它会忽略外层元素。
357
6229

被折叠的 条评论
为什么被折叠?