簡體   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