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