本文介绍了在 JavaScript 中取消事件冒泡的两种主要方式。针对非 IE 浏览器,推荐使用 W3C 标准的 e.stopPropagation() 方法;而对于旧版 IE 浏览器,则需通过设置 window.event.CancelBubble 为 true 来实现。代码示例展示了如何结合这两种方法编写兼容函数。
// 代码结束标记
JavaScript 中取消事件冒泡的方法
具体实现代码如下:
function stopBubble(e) {
// 若参数 e 存在且具备 stopPropagation 属性,表明当前环境为非 IE 浏览器,此时应遵循 W3C 标准
if (e && e.stopPropagation) {
e.stopPropagation();
}
} else {
// 否则采用 IE 浏览器特有的事件冒泡终止机制
window.event.CancelBubble = true;
}
}