「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > jQuery を使用して DIV 高さまたは CSS 属性の変更を検出するにはどうすればよいですか?

jQuery を使用して DIV 高さまたは CSS 属性の変更を検出するにはどうすればよいですか?

2024 年 11 月 9 日に公開
ブラウズ:149

How to Detect Changes in DIV Height or CSS Attributes with jQuery?

DIV 高さまたは CSS 属性の変更の決定

Web ページを操作する場合、多くの場合、高さまたは他の CSS の変更を追跡する必要があります。要素の属性。 jQuery は、このニーズに対処するためのさまざまなオプションを提供しています。

'change()' によるイベント トラッキング:

'change()' イベントは主に入力要素に使用されます。 、CSS の変更を検出するようにカスタマイズできます。ただし、このアプローチでは、要素の CSS プロパティを定期的にチェックし、以前の値と異なる場合にイベントをトリガーする必要があります。

var $element = $("#elementId");
var lastHeight = $("#elementId").css('height');
function checkForChanges()
{
    if ($element.css('height') != lastHeight)
    {
        alert('xxx');
        lastHeight = $element.css('height'); 
    }

    setTimeout(checkForChanges, 500);
}

「bind()」によるカスタム イベント バインディング:

より効率的な解決策には、カスタム イベントを作成し、それを目的の要素にバインドすることが含まれます:

$('#mainContent').bind('heightChange', function(){
        alert('xxx');
    });


$("#btnSample1").click(function() {
    $("#mainContent").css('height', '400px');
    $("#mainContent").trigger('heightChange'); //<====
    ...
});    

この場合、'mainContent' div の高さが変更されるたびに、'heightChange' イベントをトリガーします。

注:

  • 「checkForChanges()」関数のチェックの頻度は、特定の要件に合わせて調整できます。
  • 「bind()」メソッドと「trigger()」メソッドについては、jQuery ドキュメントで詳しく説明されています。さらに参照。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3