1

重複の可能性:
jQueryを使用してdivの高さが変化したことを検出する

要素への変更を追跡するために利用できる機能はありますか?height要素を追跡したいのですがmax-height、に達したらaddClass何かになります。

トラックとは、継続的に意味します。そうでない場合は、ifステートメントを記述します。

4

2 に答える 2

2

要素への変更が行われる方法を制御する場合(たとえば、それらの変更を行うためのインターフェイスを提供したため)、独自のコールバックシステムを実装するか、変更が発生するたびに関数を実行する必要があります。

それらを制御しない場合は、要素を定期的に監視し、を使用して、setIntervalまたはを再帰的に呼び出して、変更を確認する必要がありますsetTimeout。変更を監視する必要がなくなったとき、または要素が使用できなくなった場合は、間隔をクリアするか、タイムアウトループを解除することを忘れないでください。そうしないと、コールバック内から参照されているオブジェクトはガベージコレクションされません。

于 2013-01-16T18:17:34.200 に答える
1

setInterval次のように、を使用します。

var maxHeight = 0;
setInterval(function() {
    if($("#myelement").height() >= maxHeight) {
        // do stuff when div is too tall
    }
}, 50);
于 2013-01-16T18:15:13.853 に答える