我已經創建了一個類,它在初始化時開始下載JSON文件。如何在javascript中「排隊」一段代碼
但是,下載是異步運行的。 所以在我聲明它之後,我開始使用它,但它失敗了,因爲它尚未加載文件。
我可以關閉異步,但有沒有凍結瀏覽器的方式嗎?
我目前正在用setTimeout選項解決它,但這看起來像一個醜陋的黑客。
var d;
$(document).ready(function() {
d = new Duk('element');
d.getBlueprint('hud.json');
setTimeout(start, '2000');
});
function start(){
test = new d.Dialog(d.blueprint.screens.test);
test.draw();
}
爲什麼你傳遞一個字符串作爲`setTimeout`的第二個參數?顯然它會被強制爲一個數字,但爲什麼不首先使用數字文字呢? – 2011-01-18 21:14:16
你在使用什麼庫?什麼是`Duk`,getBlueprint()是做什麼的? – 2011-01-18 21:16:09