我正在爲網絡自動化製作一個Chrome擴展。第一步是以分隔符格式從服務器獲取站點和指令列表。 一旦獲得列表,它被分成一個數組,我稱之爲「siteArray」。Web自動化Chrome擴展(Javascript)的延遲邏輯
然後將站點數組分成另一個數組,我稱之爲「instructionsArray」 ,在數組中的這些項中,其中一個是站點上的持續時間,即instructionsArray [5]的值爲「10」秒。 {持續時間不是所有的網站一樣}
我的問題是如何延緩(執行長)
一種實現,我發現使用睡眠功能,其結果是低效率的,因爲它只是長 for循環
見代碼:
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds){
break;
}
}
}
然後:
getlist();
for each(siteArray){
instructionsArray = siteArray[count].split(delimiter);
gotoUrl(instructionsArray[1]);
sleep(instructionsArray[5]);
count++;
}
凡
- 的GetList()獲取的指令列表,並分成了 siteArray。
- gotoUrl()更改網址。
- sleep()運行睡眠功能。
有沒有更好的方法來實現持續時間/等待/延遲。
可能重複[睡眠/暫停/等待在Javascript](http://stackoverflow.com/questions/7854820/sleep-pause-wait-in-javascript) – wOxxOm
@wOxxOm使用setTimeout對我沒有奏效。因爲循環中的設置超時將同時添加要訪問的url1和url2 –