1. ホーム
  2. javascript

[解決済み] ドキュメントに対する要素の相対的な位置の検索

2022-06-24 04:23:08

質問

ドキュメント/ボディ/ブラウザウィンドウからの相対的な要素の位置を決定する最も簡単な方法は何ですか?

今、私は .offsetLeft/offsetTop を使っていますが、この方法では親要素からの相対位置しか分からないので、ボディ/ブラウザウィンドウ/ドキュメントの位置に対する相対位置を知るためには、ボディ要素にいくつの親要素があるかを決定する必要があります。

この方法もまた、面倒です。

どのように解決するのですか?

をたどることができます。 offsetParent を DOM のトップレベルまで辿ることができます。

function getOffsetLeft( elem )
{
    var offsetLeft = 0;
    do {
      if ( !isNaN( elem.offsetLeft ) )
      {
          offsetLeft += elem.offsetLeft;
      }
    } while( elem = elem.offsetParent );
    return offsetLeft;
}