迅速でおそらくばかげた質問。次の状況があります。複数の要素を選択し、クリックハンドラーをそれらにバインドします。それらがクリックされた後、ハンドラーを削除し、それらすべてからクリックのバインドを解除したいと思います。$(this)
常に実際にクリックされた要素を参照するため$(this)
、クリックされた要素からのみクリックハンドラーを削除します。イベントをバインドするすべてのセレクターからは削除しません。
$(modal + ' .modal-close, ' + modal + ' a.cancel_link, ' + modal + ' .okBtn').bind('click', function(e) {
e.preventDefault();
...
//$(this).unbind('click');
$(modal + ' .modal-close, ' + modal + ' a.cancel_link, ' + modal + ' .okBtn').unbind('click');
});
奇妙な質問はです。これを行うためのより良い方法はありますか、それともすべてのセレクターからクリックをアンバインドするために関数内のすべてのセレクターを繰り返す必要がありますか?以前に変数を宣言できることは知っていますが、$(this-all)
:)のようなものはありますか