検索

ホームページ  >  に質問  >  本文

div要素のバウンディングボックスを取得する:jQuery実装メソッド

<p>jQuery/JavaScript を使用して div 要素のバウンディング ボックスを計算したいと考えています。 </p> <p>次のコードを試してみました: </p> <pre class="brush:php;toolbar:false;">//ボックスの左側 document.getElementById("myElement").offsetLeft; // ボックスの上部 document.getElementById("myElement").offsetTop; //ボックスの右側 document.getElementById("myElement").offsetLeft document.getElementById("myElement").offsetWidth; //ボックスの底部 document.getElementById("myElement").offsetTop document.getElementById("myElement").offsetHeight;</pre> <p>何らかの値を返します。これは、jQuery/JavaScript を介して div 要素の境界ボックスを取得する正しい方法ですか。 </p> <p>SVG 要素の <code>getBBox()</code> メソッドに似たものが必要です。要素の <code>x</code>、<code>y</code>、<code>width</code>、および <code>height</code> を返します。同様に、div 要素の境界ボックスを取得するにはどうすればよいでしょうか? </p>
P粉207483087P粉207483087500日前531

全員に返信(2)返信します

  • P粉360266095

    P粉3602660952023-08-23 10:35:44

    これは特に jQuery 用にマークされているため -

    リーリー ###または### リーリー

    (この 2 つは機能的には同じですが、一部の古いブラウザでは

    .get()

    の方がわずかに高速です) jQuery 呼び出しを介して値を取得しようとすると、CSS 変換値が考慮されないため、予期しない結果が生じる可能性があることに注意してください...

    注 2: jQuery 3.0 では、適切な

    getBoundingClientRect()

    呼び出しを使用して独自のサイズ呼び出しを行うように変更されました (jQuery Core 3.0 アップグレード ガイド を参照) - これこれは、他の jQuery の答えが最終的には常に正しいことを意味します - ただし、新しい jQuery バージョンを使用する場合に限ります - これが、破壊的変更と呼ばれる理由です...

    返事
    0
  • P粉649990273

    P粉6499902732023-08-23 00:55:18

    getBoundingClientRect メソッドを呼び出すことで、任意の要素の境界ボックスを取得できます。

    リーリー

    これは、左、上、幅、高さのフィールドを持つオブジェクトを返します。

    返事
    0
  • キャンセル返事