最新的Web开发教程
 

HTML DOM removeEventListener() Method

<文档对象

删除"mousemove"已附着与该事件addEventListener()方法:

// Attach an event handler to the document
document.addEventListener("mousemove", myFunction);

// Remove the event handler from the document
document.removeEventListener("mousemove", myFunction);
试一试»

更多"Try it Yourself"下面的例子。


定义和用法

document. removeEventListener() document. removeEventListener()方法去除已附接有一个事件处理程序的文件。 addEventListener()方法。

注意:要删除的事件处理程序,与所述规定的功能addEventListener()方法必须是一个外部的, "named"功能,如在上面的例子(myFunction)

匿名功能,如“的文件。 removeEventListener(" event ", function() {} myScript的 );” 不管用。

提示:使用元素 addEventListener()元件 removeEventListener()方法来添加/从指定元件移除事件处理程序至/。


浏览器支持

在表中的数字规定,完全支持方法的第一个浏览器版本。

方法
removeEventListener() 1.0 9 1.0 1.0 7

注: removeEventListener()在Internet Explorer 8和更早的版本,以及Opera 6.0及更早版本不支持的方法。 然而,对于这些特定的浏览器版本,您可以使用detachEvent()方法来删除已附加与事件处理程序attachEvent()方法(请参阅"More Examples"下面的一个跨浏览器的解决方案)。


句法

document.removeEventListener( event , function , useCapture )

参数值

参数 描述
event 需要。 指定活动,删除的名称的字符串。

注意:不要使用"on"前缀。 例如,使用"click" ,而不是"onclick"

提示:对于所有的HTML DOM事件的列表,看看我们的完整的HTML DOM事件对象参考
function 需要。 指定要删除的功能。
useCapture 可选的。 指定事件相一个布尔​​值,以除去从事件处理程序。

可能的值:
  • 真 - 删除从捕获阶段事件处理程序
  • 假默认。 去除冒泡阶段的事件处理程序
注意:如果事件处理程序连接两次,一个与捕获和一个冒泡,每次都必须单独拆下。

技术细节

DOM版本: DOM 2级事件
返回值: 无返回值
更新日志: 在将useCapture参数在Firefox 6和Opera 12.0成为可选的(has always been optional for Chrome, IE and Safari)

例子

更多示例

对于不支持的浏览器removeEventListener()方法,你可以使用detachEvent()方法。

本实施例说明跨浏览器的解决方案:

if (document.removeEventListener) {         // For all major browsers, except IE 8 and earlier
    document.removeEventListener("mousemove", myFunction);
} else if (document.detachEvent) {          // For IE 8 and earlier versions
    document.detachEvent("onmousemove", myFunction);
}
试一试»

相关页面

JavaScript的教程: HTML DOM事件监听

javascript参考: 元素 removeEventListener()


<文档对象