2013-03-01 62 views
0

我很新(javascript)編程,我試圖讓自動化。如何定期檢查頁面的狀態而不刷新?

有一個頁面包含一個倒數計時器,我希望我的greasemonkey腳本在條件滿足時自動執行一些操作。

我有現在這樣的權利:

var timer = document.getElementById('timer_4975'); 

if (timer.innerHTML < "00:00:20"){ 
//Some actions 
} 

但這僅檢查一次當腳本加載條件下,當該定時器00:00:20下,它不會檢測條件會遇到並且不會採取行動。

有人可以引導我在正確的方向嗎?

Thanx提前!

回答

0

可以使用setTimeoutsetInterval函數來執行此任務。

setInterval將定期執行任務,這可能更適合您要實現的任務。

喜歡的東西:

var timer = document.getElementById('timer_4975'); 

var intervalHandle = setInterval(function() { 
    if (timer.innerHTML < "00:00:20"){ 
    //Some actions 
    clearInterval(intervalHandle); 
    } 
},1000); 

會檢查每一秒(1000毫秒)。更改1000值以增加或減少檢查頻率...每秒一次可能經常足夠。

+0

謝謝。它完美的作品! @antoyo – kawa 2013-03-01 14:53:59

+0

不要忘記提出任何有用的答案,並接受你認爲最有用的答案。 – Dancrumb 2013-03-01 19:55:09

0

你將不得不使用setInterval()來執行你的代碼不止一次:

setInterval(function() { 
    if(timer.innerHTML < "00:00:20") { 
     //Some actions 
    } 
}, 5000); //Execute this function each 5 seconds. 
+0

一旦條件成立,您應該清除間隔 – Dancrumb 2013-03-01 14:28:46