重複の可能性:
jQueryを使用してdivの高さが変化したことを検出する
要素への変更を追跡するために利用できる機能はありますか?height
要素を追跡したいのですがmax-height
、に達したらaddClass
何かになります。
トラックとは、継続的に意味します。そうでない場合は、ifステートメントを記述します。
重複の可能性:
jQueryを使用してdivの高さが変化したことを検出する
要素への変更を追跡するために利用できる機能はありますか?height
要素を追跡したいのですがmax-height
、に達したらaddClass
何かになります。
トラックとは、継続的に意味します。そうでない場合は、ifステートメントを記述します。
要素への変更が行われる方法を制御する場合(たとえば、それらの変更を行うためのインターフェイスを提供したため)、独自のコールバックシステムを実装するか、変更が発生するたびに関数を実行する必要があります。
それらを制御しない場合は、要素を定期的に監視し、を使用して、setInterval
またはを再帰的に呼び出して、変更を確認する必要がありますsetTimeout
。変更を監視する必要がなくなったとき、または要素が使用できなくなった場合は、間隔をクリアするか、タイムアウトループを解除することを忘れないでください。そうしないと、コールバック内から参照されているオブジェクトはガベージコレクションされません。
setInterval
次のように、を使用します。
var maxHeight = 0;
setInterval(function() {
if($("#myelement").height() >= maxHeight) {
// do stuff when div is too tall
}
}, 50);