jQuery≥1.7
jQueryの1.7以降のイベントAPIが更新されていると、.bind()
/ .unbind()
後方互換性のためにまだ利用可能であるが、好ましい方法は、使用している上の() / オフ()関数を。以下は今、
$('#myimage').click(function() { return false; }); // Adds another click event
$('#myimage').off('click');
$('#myimage').on('click.mynamespace', function() { /* Do stuff */ });
$('#myimage').off('click.mynamespace');
jQuery <1.7
コード例では、前のイベントを上書きせずに、画像に別のクリックイベントを追加するだけです。
$('#myimage').click(function() { return false; }); // Adds another click event
両方のクリックイベントが発生します。
人々が言ったように、バインド解除を使用してすべてのクリックイベントを削除できます。
$('#myimage').unbind('click');
単一のイベントを追加してから削除したい場合(追加された可能性のある他のイベントを削除せずに)、イベントの名前空間を使用できます。
$('#myimage').bind('click.mynamespace', function() { /* Do stuff */ });
イベントだけを削除するには:
$('#myimage').unbind('click.mynamespace');
unbind()
が機能しているかどうかをテストする方法はありますか?追加しましたが、どちらのイベントもまだ発生しています。