2

親要素のレベルが多く、合計される可能性がある子要素の合計 offSetTop と合計 offSetLeft を取得したいと考えています。

手動で1つずつ追加する以外に、それは簡単な方法ですか?

4

3 に答える 3

14

jQuery を使用せずに回答を提供するには:

var a = Element, b = 0, c = 0;
while (a) {
    b += a.offsetLeft;
    c += a.offsetTop;
    a = a.offsetParent;
}

Elementが必要な要素ノードはどこにありますか。offsetLeftoffsetTop

于 2012-10-18T17:11:25.027 に答える
3

jQueryの使用:$( node ).offset() その後.top.left

于 2012-01-07T06:19:45.050 に答える
0

https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect

ドキュメントの左上隅に相対的な外接する四角形が必要な場合は、現在のスクロール位置を top プロパティと left プロパティに追加するだけです (これらは window.scrollX と window.scrollY を使用して取得できます)。現在のスクロール位置から独立しています。

let { left, top } = domNode.getBoundingClientRect();
left += window.scrollX;
top += window.scrollY;
于 2021-08-27T00:03:04.137 に答える