我运行一个电子商务网站,我们有各种第三方 JavaScript,它们向链接和表单添加点击处理程序,然后插入延迟以确保跟踪顺利进行。通过消耗 CPU 并运行 for 或 while 循环来插入延迟,直到某个日期过去 350 毫秒(Marketo/Munchkin)或 500 毫秒(对于 Visual Website Optimizer)。合计起来几乎是 1 秒!
有时,延迟可能很好,因此跟踪可以更可靠。但是,我们不希望您单击我们网站上的大多数链接时发生这种情况,因为这会给用户带来最多 1 秒的延迟。由于存在如此大的延迟,我们所做的所有其他性能优化都将失效!
不幸的是,我们需要这些脚本的很多功能(例如 Visual Website Optimizer 和 Marketo),因此我们无法删除它们。
鉴于我没有对它们的引用,是否可以删除它们添加的处理程序或阻止它们触发?
最佳答案
您可以使用unbind删除事件。
如果您需要知道事件名称或类型,可以使用 Chrome Dev Tools 查看
另一种方法是捕获事件并 stop the propagation .
编辑: 如果事件不是用 jQuery 启动的,您可以使用 removeEventListener或set null the property event .
关于javascript - 如何从第三方 JavaScript 跟踪和分析中删除或阻止事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33843045/