20

我想知道如何获取元素相对于其父元素的距离/偏移量/位置。

与 jQuery 的position()功能不同,它获取相对于父级偏移位置的位置,我需要获取一个元素的(假设)稳定位置,因为它与包含/父元素顶部的距离。

例子:

<div id="parent">
  <div id="pos1">Has a position of 0px from top of containing parent el.</div>
  <br style="height:20px;">
  <br style="height:20px;">
  <div id="pos2">Has a position of 40px from top of containing parent el.</div>
</div>

因此,无论父元素在文档中的位置如何,pos1和的位置都pos2将被报告为相同的,因为它们相对于其父元素不会改变......

这可能吗?

4

3 回答 3

43

这应该这样做:

$('#pos1').offset().top - $('#pos1').parent().offset().top - $('#pos1').parent().scrollTop() 
于 2012-07-04T18:28:14.190 回答
5

这段代码对我有用。

var child_top = $("#parent_div").scrollTop() + $("#child_div").offset().top
于 2012-09-05T10:34:35.397 回答
0

Parent.offset() - child.offset() ?

使用 jQuery 偏移量()

于 2012-07-04T18:07:42.430 回答