我在<table>
个标签中有一个<div>
:
<div class=outer>
<div class=inner>
<table>
<tbody>
<tr><td>col1</td><td>col2</td></tr>
<tr><td>col1</td><td>col2</td></tr>
</tbody>
</table>
</div>
</div>
如果使用jQuery的$.fn.position
函数获取行的位置:
console.log($('tr:first').position().top);
根据我是否div.inner
设置为position: relative
(example),它会返回不同的值。我相信这是因为行的containing block在每种情况下都不同。
无论将div.inner
的位置设置为relative
,我都需要计算行相对于身体的位置。有一种优雅的方式来实现这一目标吗?或者我是否需要提升DOM树,检查每个祖先是否为position: relative
,并根据它添加偏移量?
答案 0 :(得分:1)
我认为你是console.log($('tr:first')。offset()。top);