jQuery unbind 删除绑定事件详解

unbind([type],[data]) 是 bind()的反向操作,从每一个匹配的元素中删除绑定的事件。如果没有参数,则删除所有绑定的事件。你可以将你用bind()注册的自定义事件取消绑定。如果提供了事件类型作为参数,则只删除该类型的绑定事件。如果把在绑定时传递的处理函数作为第二个参数,则只有这个特定的事件处理函数会被删除。

返回值 : jQuery

参数 :

type (String) : (可选) 事件类型

data (Function) : (可选) 要从每个匹配元素的事件中反绑定的事件处理函数

示例 : 把所有段落的所有事件取消绑定

jQuery 代码:

$("p").unbind()
---------------

将段落的click事件取消绑定

jQuery 代码:

$("p").unbind( "click" )
---------------

删除特定函数的绑定,将函数作为第二个参数传入

jQuery 代码:

var foo = function () {
 // 处理某个事件的代码
};
$("p").bind("click", foo); // ... 当点击段落的时候会触发 foo
$("p").unbind("click", foo); // ... 再也不会被触发 foo

相关推荐