unbind([type], [fn])


version 1.0 以降

解説

マッチした要素から、指定されたイベントハンドラを削除します。 カスタムイベントも削除できます。
引数なしで呼び出すと、すべての要素からすべてのイベントハンドラを削除します。

第1引数にイベント種別を指定すると、指定されたイベントにバインドされたイベントハンドラのみが削除されます。

第2引数にイベントハンドラを指定すると、指定されたイベントにバインドされた、指定したイベントハンドラのみが削除されます。

引数

  • [type]オプション
    String: 削除するイベントを表す文字列。
  • [fn]オプション
    Function: 削除するイベントハンドラ関数

戻り値

  • jQuery: jQueryオブジェクト

関連


例1:「bind event!」ボタンを押すと、アニメーションハンドラをバインドし、ボックスをクリックするとアニメーションするようになります。
「unbind event!」ボタンを押すと、バインドされたアニメーションハンドラを削除しますので、ボックスをクリックしてもアニメーションしません。

// アニメーションイベントハンドラ
function animationBox(){
    $("#box")
        .css("background-color", "#6495ed")
        .text("clicked!")
        .fadeTo(2000, 0.1).fadeTo(1500, 1.0, function(){$(this).text("")});
}

// イベントハンドラをバインド
$("#bind_button").click(function(){
    $("#box").bind("click", animationBox)
             .css("border", "2px solid aqua");
});

// イベントハンドラを削除
$("#unbind_button").click(function(){
    $("#box").unbind("click", animationBox)
             .css("border", "");
});


例1