unbindイベント ハンドラーとbind新しいハンドラーが必要になります。
bind()andunbind()メソッド
に関する注意: jQuery 1.7 では、.on() メソッドは、イベント ハンドラをドキュメントにアタッチするための推奨されるメソッドです。
function btnHandler() {
// unbind old event - supply the handler here so nothing else gets unbound
$('#pause').off('click',btnHandler);
// rebind new event
$('#pause').on('click',btnHandler2);
}
$('#pause').on('click',btnHandler);
との違いは、メソッドを使用して委任されたイベントを作成する機能にあり.bind()ます。委任されたイベントは、イベントがバインドされるときに存在する必要がある「ターゲット」の親にバインドされます。子孫セレクターを指定することで、親に含まれるすべての要素に対してこのイベントをトリガーし、指定したセレクターに一致させることができます。.on().on()
例:
// this will be triggered for any element with class 'bla'
// inside the body tag, no matter when said element was added.
$('body').on('click','.bla',console.log);