バインドに使用する構文はわかりませんが、on()を使用して jQuery 1.7 を使用している場合は、次のことができます。
$("#myButton").off("click").on("click", function(){
// ....
});
これにより、すべてのクリック イベントが最初にバインド解除され、次にクリック イベントがバインドされます。ただし、これにはリスクが伴います。名前空間を介して多数のクリック イベントがバインドされている場合、意図していなくても削除される可能性があります。
イベントが名前空間を使用している場合、次のようになります。
$("#myButton").off("click.myNamespace").on("click.myNamespace", function(){
// ....
});
イベントをバインドする必要があり、それを1つだけ使用してから自動的にアンバインドする場合は、次のように one() を使用できます
$("#myButton").one("click", function(){
// ....
});
明確にするために、 orなどにチェーンせずにoff()
orを単独で使用することもできます。 ただし、バインディングに使用する場合は注意が必要です。の多くの欠点の 1 つは次のとおりです。unbind()
on()
bind()
unbind()
live()
live()
.live() メソッドは、驚くべき方法で他のイベント メソッドとやり取りします。
その他のリソース
click() - bind に似てい
ますbind() - jQuery 1.7 より前の静的要素の優先バインディング
live() (使用しないでください) - 1.7 以降は非推奨ですが、1.7 より前のバージョンも使用しないでください
delegate() - 動的要素の優先バインディングjQuery 1.7 より前の
on() - jQuery 1.7 以降の静的/動的要素の優先バインディング