页面上div的位置各不相同。如何从顶部获得y位置?
答案 0 :(得分:10)
答案 1 :(得分:3)
所以你必须选择。 position()或 offset()。
position()基本类似于您可以在CSS top,left属性中使用的内容。
offset()将返回相对于文档的距离。这会考虑边距,填充和边框。
<style>
.cont {
position: absolute;
top: 100px;
left: 100px;
border: solid 3px black;
}
p {
margin: 20px;
padding: 20px;
border: solid 2px black;
position: absolute;
top: 20px;
left: 20px;
}
</style>
<div class="cont">
<p>Hello World!</p>
</div>
$('p').position() => { top: 20, left: 20 }
$('p').offset() => { top: 143, left : 143 }
注意位置值与CSS值的相同之处,offset考虑父级的位置,父级的边界和元素的'(p')边距和填充。
答案 2 :(得分:2)
您可能还对位置函数感兴趣,该函数获取相对于偏移父项的位置(vs相对于文档获取它的偏移量)
var position = $('#id').position();