实例
移除所有 <p> 元素上的 click 事件:
$("button").click(function(){
$("p").off("click");
});
定义和用法
off() 方法通常用于移除通过 on() 方法添加的事件处理程序。
自 jQuery 版本 1.7 起,off() 方法是 unbind()、die() 和 undelegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。
注意:如需移除指定的事件处理程序,当事件处理程序被添加时,选择器字符串必须匹配 on() 方法传递的参数。
提示:如需添加只运行一次的事件然后移除,请使用 one() 方法。
语法
$(selector).off(event,selector,function(eventObj),map)
参数 | 描述 |
---|---|
event | 必需。规定要从被选元素移除的一个或多个事件或命名空间。 由空格分隔多个事件值。必须是有效的事件。 |
selector | 可选。规定添加事件处理程序时最初传递给 on() 方法的选择器。 |
function(eventObj) | 可选。规定当事件发生时运行的函数。 |
map | 规定事件映射 ({event:function, event:function, ...}),包含要添加到元素的一个或多个事件,以及当事件发生时运行的函数。 |
更多实例
从 unbind() 改为 off()
如何使用 off() 来达到与 unbind() 相同的效果。
从 undelegate() 改为 off()
如何使用 off() 来达到与 undelegate() 相同的效果。
从 die() 改为 off()
如何使用 off() 来达到与 die() 相同的效果。
移除所有通过 on() 添加的 click 事件处理程序
如何移除所有通过 on() 方法添加到所有 <p> 元素上的 click 事件处理程序。
移除一个通过 on() 添加的指定的事件函数
如何移除一个通过 on() 方法添加的指定的函数。
移除使用 event 对象的事件处理程序
如何在事件触发某一确定次数后移除事件处理程序。
其他扩展