繁体   English   中英

如何覆盖附加到事件监听器的匿名javascript函数?

[英]how can I override an anonymous javascript function attached to an eventlistener?

我发现一个网站做了一些偷偷摸摸的事情。 当您将鼠标悬停在链接上时,它将显示真实的URL。 当您单击它时,它将使用click / mousedown事件重写URL。

我想在firefox中覆盖该行为,所以我启动了萤火虫以查看其作用。 鼠标单击时,它将执行一个名为window.tgs的函数。 容易,我想。 我可以覆盖此功能。

我的第一次尝试是通过getELementsByTagName()获取元素,然后

element.removeEventListener(“ click”,window.tgs,false);

令我惊讶的是,这没有做任何事情。

我尝试重新定义window.tgs window.tgs = function(){return true; };

那也什么也没做。

我不是JS专家。 感谢您的见解

谢谢席德

您是否尝试过element.onclick = function(){}

根据函数的运行方式,您可以“理论上”操纵窗口关闭事件并附加自己的处理程序。

尽管这是非常低效的,但可以完成工作。

这样的事情可能会起作用

window.onUnload(function(){

});

我并没有真正弄清楚如何解决此问题,因此设法解决了这一问题。 我添加了另一个事件侦听这扭转有问题的功能所做的一切。 糟糕的骇客,但行得通

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM