Я хотел бы получить позицию #mainChildElement
относительно .grand-grand-grand-parent
, используя javascript / jquery.Я попытался сделать $('#mainChildElement').offset().top
, однако это просто возвращает смещение относительно непосредственного родителя.
Придется ли мне рекурсивно находить позицию путем итерации по дереву и суммировать верхнее смещение каждого элемента, пока я не достигну .grand-grand-grand-parent
, или есть более элегантное решение?
<div class="grand-grand-grand-parent">
<div class="grand-grand-parent">
<div class="grand-parent">
<div class="parent">
<div class="child-element">
Content goes here!
</div>
</div>
</div>
<div class="grand-parent">
<div class="parent">
<div class="child-element">
Content goes here!
</div>
</div>
<div class="parent">
<div class="child-element">
Content goes here!
</div>
</div>
</div>
</div>
<div class="grand-grand-parent">
<div class="grand-parent">
<div class="parent">
<div class="child-element">
Content goes here!
</div>
</div>
</div>
<div class="grand-parent">
<div class="parent">
<div id="mainChildElement" class="child-element">
Where am I?!
</div>
</div>
<div class="parent">
<div class="child-element">
Content goes here!
</div>
</div>
</div>
</div>
</div>