我正在通過jQuery導入必要的文件,並且我想更新一些文本以顯示正在加載哪個文件,但似乎導入是在文本更新之前完成的,不管指定的順序如何。但是,控制檯將按計劃記錄更新,即使它在之後被稱爲的導入語句。我也嘗試了這種方式的文本更新調用,但它也沒有工作。使用jQuery加載源文件時更新對象HTML
下面是一個代碼摘錄:
var jsFiles = new Array('some js files');
var cssFiles = new Array('some css files');
for(var i = 0; i < jsFiles.length; i++) {
$('#loadfile').text('imported js library `' + jsFiles[i]+'`');
$('head').append('<script type="text/javascript" src="'+jsFiles[i]+'"></script>');
console.log('imported js library `' + jsFiles[i]+'`');
}
for(var i = 0; i < cssFiles.length; i++) {
$('#loadfile').text('imported css library `' + cssFiles[i]+'`');
$('head').append('<link rel="stylesheet" media="screen" type="text/css" href="'+cssFiles[i]+'" />');
console.log('imported css library `' + cssFiles[i]+'`');
}
我已嘗試設置超時時間,並且我也試過,如果文本已經被更新的變量設置爲true,並檢查是否該變量是真實的導入文件之前, ,但這只是使文件無法導入。
我也嘗試使用document.getElementById
調用更新文本,但沒有任何骰子。 JavaScript中有固有的東西來設置語句的優先級,還是我只是忽略了一些東西?
循環將在幾毫秒內被執行,比相匹配的所有腳本加載速度更快。你不會看到任何明顯的元素變化。腳本異步加載,代碼不會等到腳本加載完成。除此之外,我不明白你的問題是什麼(如果還有其他的)。 – 2013-02-12 21:36:48