如何覆盖附加到eventlistener的匿名javascript函数?

时间:2009-12-28 18:55:33

标签: javascript firefox firefox-addon

我发现一个网站确实有些偷偷摸摸的东西。当您将鼠标悬停在某个链接上时,它会显示真实的网址。当您单击它时,它使用click / mousedown事件来重写URL。

我想在firefox中覆盖这种行为,所以我启动了firebug以查看它的功能。单击鼠标,它将执行一个名为window.tgs的函数。很简单,我想。我可以覆盖这个功能。

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

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

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

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

也没有做任何事情。

我不是JS专家。您的见解表示赞赏

感谢 SID

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

虽然这种效率非常低,但它可以完成工作。

这样的事情可能会起作用

window.onUnload(function(){

});

答案 2 :(得分:0)

我并没有真正弄清楚如何解决这个问题,所以我一路走来。我添加了另一个eventlistener,它反转了所讨论的函数所做的一切。糟糕的黑客,但它的工作原理