ホームページ > ウェブフロントエンド > jsチュートリアル > jQuery での delegate と on の使用法の違いとその例

jQuery での delegate と on の使用法の違いとその例

巴扎黑
リリース: 2017-06-25 10:40:23
オリジナル
1006 人が閲覧しました

jQuery.delegate() は、jQuery 1.7 では .on() に置き換えられました。以下は、jQuery での delegate と on の使用例と違いです。興味のある方は、jQuery1.7 で参照してください。 delegate() は .on() に置き換えられました。以前のバージョンでは、これが依然として

events

delegate を使用する最も効率的な手段でした。 イベント バインディングと委任では、delegate() 以降は通常同等です。
.delegate() は、1 つ以上の
イベント ハンドラー
プログラムを指定された要素 (選択された要素に属する子要素) に追加し、これらのイベントが発生したときに実行される関数を指定します。
コードは次のとおりです:

// jQuery 1.4.3+

$( elements ).delegate( selector, events, data, handler );

// jQuery 1.7+
$( elements ).on( events , [selector ], data, handler );

例: .delegate() コード:


コードは次のとおりです:

$("table").delegate("td","click",function) (){

alert(" hello");

});

.on() コード:


コードは次のとおりです:

$("table").on("click", "td" 、 function() {

alert("hi ");


追記: 2 つの違いは、セレクターとイベントの順序が異なることです
デリゲートと on メソッドによって選択される要素の子要素「正当な」子要素である必要があります。たとえば、


コードは次のとおりです:

$("table").delegate("button","click",function(){...}); ("click", "p", function(){...});

は機能しません。通常の状況ではテーブルのサブ要素は tr, td... であるはずです。

on(events,[selector ],[data], fn)、パラメーター [selector] はオプションです。
フィルター

のイベントをトリガーするセレクター要素の子孫のセレクター

文字列

例: コードは次のとおりです:
$("table").on("click", ".td1", function() {
alert("hi");

});

フィルタークラスは td1 の table サブ要素

とデリゲートのセレクターが必要です。

以上がjQuery での delegate と on の使用法の違いとその例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート