2011-10-27 24 views
1

我想停止執行腳本,類似於Firefox中的Esc鍵。它會停止在該頁面上運行的所有Javascript以及所有gif動畫。如何阻止Javascript執行?所有的計時器? (如何停止輪詢功能 - 或者monkeypatching)

是否有一個函數可以調用哪一個會阻止所有內容?

+0

你爲什麼要這麼做? – Andre

+0

因爲我無法控制的JavaScript的一部分是輪詢服務器,導致Chrome瀏覽器刷新/更改重新加載按鈕,這會造成惱人的用戶體驗。編號喜歡禁用輪詢,因爲在_my_代碼運行後它不是必需的。我不允許更改/觸摸模塊外部的代碼。是的。最好的管理。 – rapadura

回答

2

根據違規模塊的組織方式,也許您可​​以在不修改源代碼的情況下對它進行猴子修補。

例如,如果惱人的查詢功能是全局命名空間或者你可以嘗試用一個無用的存根來代替它:

//save the old version of the function, in case 
//we need to restore it afterwards 
var nasty_function = His.Namespaced.Evil.func; 

//put our own stub in place 
His.Namespaced.Evil.func = function(what, args, it , should, receive){ 
    return somthing_that_signals_a_failed_poll; 
} 
+0

現在啊!謝謝。我喜歡你的風格missno。 – rapadura

2

不,沒有這樣的事情。也沒有真正的理由:你編寫代碼,如果你願意的話,你可以讓它停止做事。

另外:如果有這樣的功能停止所有的JS活動 ...你會如何使它重新啓動?

+0

這是一個很好的問題,但我wouldnt。該死的東西。 Firefox可以做到,其他瀏覽器也應該這樣做。 – rapadura