我指的是this。一切都還不清楚。Javascript setTimeout是否停止其他腳本執行
- 我有一個JS函數
fillTree()
它更新一棵樹,它有複選框。 - 我有另一個功能
checkSelectedBoxes()
它在window.onload
上執行,它檢查選中的複選框。 - 現在有很多其他功能連接。
我的問題:
- 如果我使用
setTimeout()
將其他腳本功能也停下來等待我的函數來完成加載?
什麼可能是在這種情況:
function fillTree(){...}
function checkSelectedBoxes(){...}
fillTree(); // This take time to get data. onLoad() doesnt work.
setTimeout(function(){ checkSelectedBoxes() },5000);
這甚至增加了時間間隔後我返回空值。 fillTree()
暫停執行?
不,「setTimeout」不會暫停執行其他代碼。如果在fillTree()完成時試圖調用checkSelectedBoxes(),爲什麼不把它作爲回調參數傳遞,或者只是在'fillTree()'的末尾傳遞呢? – 2012-04-21 10:13:00
@RoryMcCrossan謝謝,你的答案似乎是最好的解決方案,但它的CMS我正在使用和樹設置在其他js文件,我不會干涉,因爲它使用了許多其他功能和情況可能並不總是相同 – 2012-04-21 10:15:16