gpt4 book ai didi

javascript - 如何断开所有处理程序与滚动事件的连接?

转载 作者:行者123 更新时间:2023-12-03 03:43:52 25 4
gpt4 key购买 nike

我正在查看一个包含 30-40 个 JavaScript 的庞大代码库,其中包括执行各种操作,包括 Hook 事件。

我希望以编程方式断开 scroll 事件(窗口或文档)的任何处理程序。最好是从 F12 工具中的控制台选项卡。

在 JavaScript 中可以吗?

最佳答案

您可能已经发现无法使用removeEventListener,因为您需要知道哪个函数是要分离的事件处理程序。

但是您可以围绕 addEventListener 创建一个包装器,这样当它被调用时,您就不会将其转换为对真正的 addEventListener 方法的调用。

您可以将此 script 元素放在 head 部分中,位于任何包含以下内容的 script 标记之前图书馆:

<script>
window.origAddEventListener = window.addEventListener;
window.addEventListener = function (type, f, options) {
if (type === "scroll") return; // do not add the listener
window.origAddEventListener(type, f, options);
};
</script>

您可以对 document.addEventListener 执行类似的操作。

这样您就可以阻止窗口(或文档)上的scroll事件注册事件处理程序) 元素。

关于javascript - 如何断开所有处理程序与滚动事件的连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45494467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com