2025-09-03 如何优雅阻止JS事件冒泡?掌握这5种方法提升交互体验 如何优雅阻止JS事件冒泡?掌握这5种方法提升交互体验 一、为什么需要阻止事件冒泡?上周在开发一个电商筛选组件时,我遇到个典型场景:点击下拉菜单内部选项时,菜单会正常触发点击事件;但点击菜单外部遮罩层时,不仅需要关闭菜单,还会意外触发父容器的校验逻辑——这就是典型的事件冒泡问题。当我们在浏览器中触发某个DOM事件时,事件会经历三个阶段: 1. 捕获阶段:从window对象向下传播到目标元素 2. 目标阶段:到达实际触发事件的元素 3. 冒泡阶段:从目标元素向上回溯到windowhtml× document.getElementById('modal').addEventListener('click', () => { console.log('关闭弹窗'); // 预期行为 }); document.querySelector('.close-btn').addEventListener('click', () => { console.log('执行额外操作'); // 预期行为 // 但点击按钮时两个事件都会触发! }); 二、5种阻止冒泡的实战方案方法1:event.stopPro... 2025年09月03日 9 阅读 0 评论