如图所示,输出的dragleave旁边有个②,我该怎么判断到这种情况出现呢
console.log('delagve', (function(){window.__test = window.__test || 1; if(__test++ === 2){debugger;}})());
作用域外加一个变量,初始化值是0
在执行console的地方,对这个值加1
判断如果这个值大于1,就是console所在的函数被执行了多次
i=0;
function test(){
i+=1;
console.log(123)
}
test()
test()
test()
console.log(i)
这个输出两次,大概率应该是这个事件被绑定了两次,在页面上操作一次,就会出现两次。可以在绑定这个事件的代码上打个断点,dubgger判断下是否绑定了两次。这样就可以帮助你找到问题所在了。
// 关注下本人小网站:www.feiaci.com
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
打个断点,
debugger
一下,你就知道为什么会输出两次了。