新しいjQuery.click()
では.submit()
、などが次のように置き換えられました。
$('#foo').on('click', function() {
//
});
ベストプラクティスの観点から。同様のことが起こりました.live()
か?それとも、これはまだそれを行うための最良の方法ですか?
$('#foo').live('click', function() {
//
});
新しいjQuery.click()
では.submit()
、などが次のように置き換えられました。
$('#foo').on('click', function() {
//
});
ベストプラクティスの観点から。同様のことが起こりました.live()
か?それとも、これはまだそれを行うための最良の方法ですか?
$('#foo').live('click', function() {
//
});
.on()
ライブを使用する代わりに、委任を使用するのが正しい方法です
$('staticAncestorElement').on('click','#foo',function(){
});
jQueryのlive()ドキュメントからわかるように
$(selector).live(events、data、handler); // jQuery 1.3+
$(document).delegate(selector、events、data、handler); // jQuery 1.4.3+
$(document).on(events、selector、data、handler); // jQuery 1.7+
On()には、他のすべてのバインディングのすべての機能があります。on()
動的要素にバインドするには、次のように使用できます
$(document).on('click', '#foo', function() {
//
});
できれば、の代わりに近い静的要素を使用することをお勧めしますdocument
。
jQueryが提供している多くのバインディングメソッドに関する私の別の投稿から引用するには:
bind()
1.0、1.3、1.4.2、1.7live()
で追加されました。delegate()
on()
1.7以降
on()
が推奨される使用法であり、live()
非推奨であり、まったく推奨されていません。1.3bind()
の代わりに 使用live()
し、1.4.2の時点で使用し、1.7の時点で他のいずれかの代わりに使用している場合。delegate()
live()
on()
ここで完全な投稿を見ることができます。これlive()
には、jQuery1.7以降でこれ以上使用しないことの多くの欠点と理由も記載されています。
新しいjQueryでは、.click()、. submit()などが次のように置き換えられました。
それらは交換されませんでした。引き続き機能しますが、現在はへのショートカットになっていclick
ます。非推奨のメソッドはとです。これで、イベントを委任するためにこれを行うことができます。submit
on
bind
live
$(closestStaticParent).on('click', 'element', function(){ ... })