文章导航

JavaScript removeEventListener()

2018-7-25 11:04| 作者: admin| 查看: 1327| 评论: 0|来自: 蚂蚁部落

此方法可以移除通过addEventListener()注册的事件处理函数。

相关阅读:

(1).addEventListener方法参阅JavaScript addEventListener()一章节。

(2).注册事件处理函数参阅JavaScript 注册事件处理函数一章节。

语法结构:

[JavaScript] 纯文本查看 复制代码
element.removeEventListener(event, function, useCapture)

参数解析:

(1).event:必需,要移除的事件名称,例如"click",切记前面不能加"on","onclick"是错误形式。

(2).function:必需,事件处理函数名称,例如func。

(3).useCapture:可选,布尔值,规定移除事件处理函数的阶段;如果是true,表示捕获阶段移除,如果false(默认),表示冒泡阶段移除。

浏览器支持:

(1).IE9+浏览器支持此方法。

(2).edge浏览器支持此方法。

(3).谷歌浏览器支持此方法。

(4).火狐浏览器支持此方法。

(5).opera浏览器支持此方法。

(6).safria浏览器支持此方法。

代码实例如下:

[HTML] 纯文本查看 复制代码运行代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>蚂蚁部落</title>
<style type="text/css">
#box {
  width:200px;
  height:100px;
  background-color:green;
}
</style>
<script type="text/javascript">
window.onload=function(){
  var obt = document.getElementById("bt");
  var odiv = document.getElementById("box");
  function changeColor(){
    odiv.style.backgroundColor = "red";
  }
  odiv.addEventListener("click", changeColor , false);
  obt.onclick = function () {
    odiv.removeEventListener("click", changeColor,false)
  }
}
</script>
</head>
<body>
<div id="box"></div>
<input type="button" id="bt" value="解绑事件处理函数"/>
</body>
</html>

点击底部按钮就可以解绑对应的事件处理函数。

特别说明:事件处理函数必须是在外部定义的,看如下代码:

[JavaScript] 纯文本查看 复制代码
odiv.addEventListener("click", function changeColor() {
    this.style.backgroundColor = "red";
  }, false);

使用上面方式注册的事件处理函数就无法被removeEventListener移除。


鲜花

握手

雷人

路过

鸡蛋

最新评论

返回顶部