HTML DOM removeEventListener() 方法

返回上一级

HTML DOM 的 removeEventListener() 方法用于移除由 addEventListener() 方法添加的事件句柄

如果要移除事件句柄,addEventListener() 的执行函数必须使用外部函数,如 (myFunction)

匿名函数,类似 document.removeEventListener("event", function(){ myScript }); 是无法移除的

浏览器支持

yes 9.0+ yes yes yes

Internet Explorer 8 及更早IE版本不支持 removeEventListener() 方法,但可以使用 detachEvent() 方法来移除由 attachEvent() 方法添加的事件句柄

语法

element.removeEventListener( event, function, useCapture )

参数值

参数 描述
event 必须。要移除的事件名称

不要使用 "on" 前缀。 如使用 "click" ,而不是使用 "onclick"

所有 HTML DOM 事件,可以访问我们的 HTML DOM Event 对象参考手册
function 必须。指定要移除的函数
useCapture 可选。布尔值,指定移除事件句柄的阶段

可能值:
true - 在捕获阶段移除事件句柄
false- 默认。在冒泡阶段移除事件句柄

如果添加两次事件句柄,一次在捕获阶段,一次在冒泡阶段,你必须单独移除该事件

范例

移除 addEventListener() 方法添加的 "mousemove" 事件

// 向 <div> 元素添加事件句柄
document.getElementById("myDIV").addEventListener("mousemove", myFunction);
// 移除 <div> 元素的事件句柄
document.getElementById("myDIV").removeEventListener("mousemove", myFunction);

运行范例 »

范例

如果浏览器不支持 removeEventListener() 方法,可以使用 detachEvent() 方法实现

var x = document.getElementById("myDIV");

if (x.removeEventListener) {

    // 所有浏览器,除了 IE 8 及更早 IE 版本    
    x.removeEventListener("mousemove", myFunction);
} else if (x.detachEvent)
{                   // IE 8 及更早IE版本    
    x.detachEvent("onmousemove", myFunction);
}

运行范例 »

相关页面

JavaScript 基础教程: HTML DOM EventListener

JavaScript 参考手册: document.removeEventListener()

返回上一级

JavaScript 参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.