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);
}
}); 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM