javascript - 如何取消 Firefox 中的事件冒泡?

标签 javascript firefox event-bubbling

我有一个表格单元格 (td),单击它会触发脚本。我在该表格单元格中有一个 div,单击时会触发另一个 div。我已成功使用下面的代码取消事件冒泡(因此 div 事件不会触发 td 事件)。

if (!e) var e = window.event;

e.cancelBubble = true;
e.stopImmediatePropagation();
e.returnValue = false;

if (e.stopPropagation)
{
    e.stopImmediatePropagation();
    e.stopPropagation();
    e.preventDefault(); 
}

在 Chrome、Safari 和 Opera 中一切正常。为什么它不能阻止 Firefox 中的事件冒泡?是否有某种我需要注意的 Firefox 修复?

最佳答案

我认为 event.stopImmediatePropagation() 会阻止同一事件的其他监听器被调用,从而使 event.stopPropagation() 调用无效。尝试仅使用 event.stopPropagation()

关于javascript - 如何取消 Firefox 中的事件冒泡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11113747/

相关文章:

javascript - 如何在node js中获取promise之外的结果

javascript - CKeditor 在粘贴事件时删除除 div、span 之外的所有 html 标签

html - Hover.css 库动画在 Firefox 或 Edge 中不工作,但在 chrome 中工作?

Jquery mouseleave事件: how to know towards what element the mouse is going?

javascript - Vue.js 路由器 : why $route. router.go() 不工作?

javascript - NodeJS + Electron 路径

JavaScript 粘贴事件在 Chrome 中运行良好,但在 Firefox 中运行不正常

javascript - 如何在我自己的浏览器上停用跨站脚本防御?

jQuery .on 效率

reactjs - 在专注于输入时按 enter 会触发同级按钮