代码很简短,问题应该也比较简单,先贴上代码:问题是,我在第二次调用这个函数的时候,我认为应该已经 remove掉了第一次监听事件了,但是浏览器会同时打出两个“a click” ,想知道这中发生了什么。。。(重点:实际业务中init函数不能暴漏在外面...这是一个demo样例以及。。如何让多次调用mytest这个函数,实际只打出一次“a click”..(init函数不暴漏在外面)先谢过啦
1 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
var mytest = (function(){
function init(){
console.log('a click')
}
return function(node){
node.removeEventListener("click",init);
node.addEventListener("click",init);
}
})()
添加回答
举报
0/150
提交
取消