js 如何移除一个匿名函数的绑定事件

Posted 实现丰盛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 如何移除一个匿名函数的绑定事件相关的知识,希望对你有一定的参考价值。

大家都知道 addEventListener的用法 绑定事件

例如

element.addEventListener(type,handler,false);

 

element是dom元素 type是事件比如click handler 是一个函数表达式,false 代表是冒泡阶段 true是捕获阶段

如果移除事件的话 这样写:

element.removeEventListener(type,handler);

 

如果handler是个匿名函数呢

比如

element.addEventListener(type,function(){

},false);

 

这样是不是就没有办法移除了呢

当然可以的

可以把条件设置在匿名函数里面进行

代码如下:测试成功

var dom=document.getElementById("content"),clickt=0;
dom.addEventListener("click",function(e){
clickt++;
alert(‘你摸了我‘+clickt+‘下了。最多摸2下哦‘);
if(clickt>=2){
dom.removeEventListener(e.type,arguments.callee,false);
console.log(this);
}
}); 

 

以上是关于js 如何移除一个匿名函数的绑定事件的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript移除绑定在元素上的匿名事件处理函数

JS绑定事件和移除事件的处理方法

vue.js怎样移除绑定的点击事件

原生js如何绑定a连接点击事件?

html元素移除回调

如何按值将变量传递给匿名javascript函数?