バージョン 1.7 以降、JQuery はイベント処理関数のバインドとキャンセルのために on() と off() を提供します。これら 2 つの API は、もともと JQuery によって提供されていた binding() および unbind() と多くの類似点がありますが、いくつかの違いもあります。バインドとバインド解除の詳細については、この記事を参照してください。
on() と binding() 関数のシグネチャは次のとおりです:
bind(type, [data], fn) on(type,[selector],[data],fn)
2 つの関数の違いは次のとおりです: セレクター パラメーター値がサポートされているかどうか。 JavaScript のイベント バブリング機能により、親要素にイベント ハンドラーを登録すると、子要素でイベントが発生すると、親要素のイベント ハンドラーもトリガーされます。 onを使用するときにセレクターを設定しない場合、onとbindの間に違いはありません。
<p id="parent"> <input type="button" value="a" id="a"/> <input type="button" value="b" id="b"/> </p>
上記のコードで、bind()を使用してクリックイベントハンドラーを親にバインドすると、ボタンaまたはbがクリックされたときにイベントハンドラーが実行されます。 b をクリックしたときではなく、a がクリックされたときにトリガーしたい場合は、on を使用できます。コードは次のとおりです
$("#parent").on("click","#a",function(){ alert($(this).attr("id")); });
もう 1 つ注意すべき点があります。on にバインドされたイベント処理関数は、将来追加される要素にも使用でき、デリゲートと同じ効果がありますが、バインドにはありません。
以上がバインド時のjQueryの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。