window.addEventListener 如何防止同一元素多次绑定同一事件 触发多次??

问题: 
一下代码中: div 多次绑定 click 事件 ,绑定一次 , 点一下 触发一次 , 绑定2次 , 点一下,触发两次 。 有没有办法减少 div.addEventListener 绑定的 click 事件的次数?? 我尝试过的:

    // 无论事件是否存在 , 先移除 
    div.removeEventListener
    
    // 无时间是否存在 , 添加
    div.addEventListener

这样做 , 没有效果(绑定2次, 仍然触发两次 , 三次触发三次) .... 有没有办法做到:

div.onclick = function(){ ... }

类似与这样的效果(就是不产生事件队列) , 而是不断的重写事件(类似于 js的函数重载) 
描述的不是太清楚 , 请耐心看完,谢谢

html :

<div class='loginEvent'>绑定</div>
<div class='div'>这是一个测试按钮</div>var div = document.getElementsByClassName('div')[0];var bindBtn = document.getElementsByClassName('loginEvent')[0];

// 通过此按钮 可以 让 对元素 div 绑定多次click事件
bindBtn.addEventListener('click' , loginEvent ,false);

// 注册 div 事件
function loginEvent(){  div.addEventListener('click' , sayHello ,false);
}

// div 事件触发内容
function sayHello(){
   console.log('hello');
}


GCT1015
浏览 2762回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript