是否可以停止传播到浏览器扩展?

Is it possible to stopPropagation to Browser Extension?

LastPass 浏览器扩展程序正在 "mouseup" 事件中执行一些代码,当页面上有数千个输入元素(复选框)时,这会减慢我的页面速度。我知道,我知道,但它在一个大树控件中,树的每个节点上都有复选框。

我发现有人在 LastPass 论坛上谈论这个:https://forums.lastpass.com/viewtopic.php?f=12&t=286955

但是,由于 LastPass 没有对此作出回应 post,我想知道是否有办法停止将事件传播到 LastPass 以防止它在我所在的页面上转到它们知道这会导致减速。

有什么方法可以拦截事件并阻止它传播到浏览器扩展吗?

我已经尝试添加 "onmouseup" 处理程序并调用 event.stopPropagation() 和 event.stopImmediatePropagation(),但这似乎并没有阻止来自 运行 的浏览器扩展它的 "mouseup" 函数。
在发生这种情况的地方,我不需要 LastPass 扩展程序,并且当我禁用该扩展程序时,我没有遇到减速。

这是 Chrome 的性能分析器的屏幕截图,显示 每次鼠标弹起时发生 757 毫秒的延迟! 再加上 jQuery 的 Sizzle 选择器延迟 267 毫秒在我的页面上导航树控件的速度非常慢。

只是想把它关闭,以防有人带着同样的问题来到这里。

e.stopImmediatePropagation 成功了。我遇到的问题与事件 Capturing vs Bubbling 有关。我试图阻止的事件是用 useCapture=true 注册的。为了使 stopImmediatePropagation 起作用,我还必须使用 useCapture=true 添加我的事件。

$(document).ready(function () {
    //this is to stop LastPass from listening to mouseup on my page
    window.addEventListener('mouseup', function (e) {
        e.stopImmediatePropagation();
    }, true);
});

这里的好消息是 click 事件仍然触发,即使我已经停止了对 mouseup 的所有处理。

不知道为什么我不明白...希望它也能帮助其他人。