javascript 中可使用 preventdefault() 和 stoppropagation() 方法阻止事件传播:preventdefault():阻止事件的默认行为。stoppropagation():阻止事件向上传播到父元素。结合使用 preventdefault() 和 stoppropagation() 可完全阻止事件传播。
如何在 JavaScript 中阻止事件
阻止事件传播是防止事件冒泡到文档中更高层次元素的关键技术。在 JavaScript 中,可以使用 preventDefault() 和 stopPropagation() 方法来阻止事件:
preventDefault()
preventDefault() 方法阻止事件的默认行为。默认行为因事件类型而异。例如,对于单击事件,默认行为是触发元素的 click 处理程序。调用 preventDefault() 将阻止该处理程序运行。
document.getElementById("myButton").addEventListener("click", function(e) { e.preventDefault(); // 自定义代码 });
stopPropagation()
stopPropagation() 方法阻止事件在 DOM 树中向上传播到其父元素。这可以防止事件冒泡到文档中更高级别的元素。
document.getElementById("myElement").addEventListener("click", function(e) { e.stopPropagation(); // 自定义代码 });
结合使用
preventDefault() 和 stopPropagation() 可以一起使用以完全阻止事件的传播:
document.getElementById("myElement").addEventListener("click", function(e) { e.preventDefault(); e.stopPropagation(); // 自定义代码 });