メディアクエリを使用してdivの幅を調整しています。そのdivが幅を変更したときに反応するページが必要です。
ただし、これを使用.resize
した場合、トリガーが2回発生し、ユーザーがさらにdivを操作すると問題が発生します。.live()
ユーザーが目的の効果を達成するために対話する必要があるため、使用できません。最後に、私は調査しましDOMSubtreeModified
たが、それは減価償却されました。
簡単に言えば、これが私がやりたいことです。
$('#element').watchForChange(function(){
*...do stuff here when the change happens...*
});
ご協力いただきありがとうございます。
- - - 編集 - - - -
この例で、サイズ変更でよく見られる問題を明確にしましょう。
<div id="box"></div>
<span id="button">Open</span>
上記の例では、#box
が400x400で、「オープン」状態であると想定してい(display:block)
ます。ウィンドウのサイズが800pxに変更されたら、ボックスを閉じます(display:none)。「開く」ボタンはjqueryを使用してボックスを再度開きます($('#button').click(function(){...});)
私が歌い続ける問題は、「開く」をクリックすると、ボックスが開いてから閉じることです。2回目のクリックは正常に機能します。
Jqueryは、イベントハンドラーで2番目の呼び出しを保持しています。サイズをもう一度確認する必要があるため、バインドを解除できません。
オープンクローズ機能を使用していません。むしろ、スライダーの次のボタンを使用しています。そのサイズ変更時にアイテムを最初にリセットする必要があります。問題なくリセットできます。問題は、「次へ」を2回クリックするとリセットされるということです。