javascript解决重叠事件问题

    技术2023-07-30  184

    有时候我们开发项目时,会遇到事件重叠问题,例如一个div元素注册了一个点击事件,而div元素内的button元素也注册了点击事件,那么如果点击button元素的话button事件和div事件将同时触发,那么如何避免这种事情发生呢?或者说如何只让button产生点击它的事件而不让div也触发点击事件?这就是事件重叠问题,对于这个问题解决办法还是很容易的,直接上解决方法。

    function stopBubbling(e) {//避免事件冲突 e = window.event || e; if (e.stopPropagation) { e.stopPropagation(); //阻止事件 冒泡传播 } else { e.cancelBubble = true; //ie兼容 } }

    之后在button的点击事件中调用该方法就能避免事件重叠的问题了。

    $("#btn_"+dataList[i].CPID001).click('click',function() { console.log(itemId); console.log(itemType); stopBubbling(event);//阻塞其他重叠事件 });

     

    Processed: 0.009, SQL: 9