我想用setTimeout
遞歸調用幾個函數。用setTimeout遞歸調用一個函數
var flag = 0 ;
function slave1(){
if(flag < 60) {
var COPY_PO_LINE_DIV = document.getElementById("DOM_ELEMENT1"); // Checking if DOM has loaded or not. If yes then doing something.
if (COPY_PO_LINE_DIV != null) {
flag = 0;
//doing something
} else {
setTimeout(slave1,2000); //waiting for 2 seconds and checking again.
}
}
}
//doing similar task
function slave2(){
if(flag < 60) {
var COPY_PO_LINE_DIV = document.getElementById("DOM_ELEMENT2");
if (COPY_PO_LINE_DIV != null) {
flag = 0;
//doing something
} else {
setTimeout(slave2,2000);
}
}
}
function master() {
slave1();
console.log("Without completing slave1 function.");
slave2();
}
通過master()
功能我想打電話給多種功能此起彼伏,然而,在目前的情況下其調用slave2()
沒有完成slave1()
。我如何確保slave1()
已執行完成。如果沒有加載DOM元素,則應該每2秒執行60次,並且應該從slave1()
開始執行,然後轉到下一個。
如果不加載dom元素而沒有將控件返回到下一個函數,我想執行60次相同的函數。
你使用任何JS庫或者它必須是純JS解釋這個問題? – Tomalak 2014-08-27 11:44:20
Pure JS .................... – 2014-08-27 13:49:15