1
我試圖在使用Greasemonkey的網站上修改setInterval
。我的代碼如下所示:javascript:網站傳遞對象設置間隔
// @run-at document-start
(function() {
var clearIntervalOriginal = unsafeWindow.clearInterval;
unsafeWindow.clearInterval = function(foo) {
GM_log(typeof foo + ":" + foo)
clearIntervalOriginal(foo);
}
}());
例website。
如果你看一下控制檯登錄,你會看到,間隔ID號是不存在的,而是foo
有時一個對象。綜觀網站源碼,我認爲這是相關的代碼中使用了:
//yahoo code
i.tid=c.setInterval(function(){
if(i.done){
c.clearTimeout(i.tid);
i.rec=[i.t_render-h,i.t_jsload-h,i.t_jsinit-h,i.t_jsend-h,i.t_jsend-i.t_jsinit]
}
},f);
我怎樣才能得到間隔ID號從foo
對象?
你是一個誰可以看到什麼'console.log'輸出。基於無論如何,這應該是微不足道的爲自己回答。 –
第二段代碼中的'c'參考是什麼?在第一個位中,'clearInterval'被替換(這不是一個好的策略),然後調用'clearTimeout'。這是打算嗎?正如尼克所說,定時器引用位於'i.tid'中,所以這就是你需要取消它。 – RobG