Web サイト用の jquery プラグインを作成したいと考えています。
イベントを作成しますが、ハンドラーを処理する最善の方法を知りたいです。
私の心配は、ajax クエリが原因で DOM html が変更されたときに、イベントをバインドしたままにしておく必要があることです。いくつかの調査の後、最善の方法は、jquery で利用可能な .on() 関数を使用することであることがわかりました。
これが私が試したことです:
jQuery.fn.wtpicker = function ( params ) {
var currentSelector = $(this);
$(document).on('click', currentSelector, function(event) {
alert('test');
});
return this;
}
しかし、それはうまくいきません...
live() は非推奨です。ajax クエリを使用して HTML を動的に変更すると、クラシック バインド d.click() が機能しません。
第二引数に「#whatever div.myclass」のように、セレクターのdomを指定することになっています。しかし、それはプラグインなので、私はそれを知ることができません。
それを機能させるために、私は書くことを余儀なくされています:
jQuery.fn.wtpicker = function ( params ) {
var currentSelector = $(this);
$(document).on('click', '#whatever div.myclass' , function(event) {
alert('test');
});
return this;
}
しかし、別のセレクターが必要ない場合、それはあまり効率的ではありません。
プラグイン自体で使用されたウィッチ DOM セレクターを取得することは可能ですか? 私はdomでパラメータを渡したくありません。それは本当に良い方法ではありません。
どうもありがとう