0
我正在寻找一个拥有30-40个JavaScript的庞大代码库,包括做各种各样的东西,包括连接事件。如何断开滚动事件中的所有处理程序?
我期待以编程方式断开scroll
事件(窗口或文档)的任何处理程序。最好从F12工具的控制台选项卡中找到。
这是可能的JavaScript?
我正在寻找一个拥有30-40个JavaScript的庞大代码库,包括做各种各样的东西,包括连接事件。如何断开滚动事件中的所有处理程序?
我期待以编程方式断开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
类似的东西。
这样你防止事件处理程序被注册为window
(或document
)元素的scroll
事件。