You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Chromium中优先捕获被event.stopPropagation拦截的键鼠事件

原生解决方案:使用事件捕获阶段监听

你只需要利用DOM标准的事件捕获阶段特性即可实现需求,你之前使用的addEventListener默认监听冒泡阶段事件,自然会被下游元素的event.stopPropagation()阻断,调整监听触发阶段即可。

实现代码

// 第三个参数传入true,表示在事件捕获阶段触发监听
window.addEventListener('mousedown', yourEventHandler, true)

原理说明

  • DOM事件流固定分为三个执行阶段:捕获阶段 → 目标阶段 → 冒泡阶段
  • 捕获阶段的事件传递顺序为window → document → html → body → 目标元素,是整个事件流中最早执行的阶段
  • 下游元素调用event.stopPropagation()仅会阻断它执行之后的事件传递流程,不会影响已经执行完成的window级捕获监听

适配性说明

  • 该方案是W3C标准DOM API,无任何Chromium hack操作,完全符合你的适配要求
  • 即使下游元素在自身的捕获阶段调用event.stopPropagation(),window级的捕获监听也已经先一步执行完成,不会被拦截

内容的提问来源于stack exchange,提问作者DarkTrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 09:45:06