首先,我想說一下Javascript的裝載和執行。通常來說,瀏覽器對於Javascript的運作有兩大功能:1)載入後馬上執行,2)執行時會阻塞頁面後續的內容(包括頁面的渲染、其它資源的下載)。於是,如果有多個js檔案被引入,那麼對於瀏覽器來說,這些js檔案被串列地載入,並且依序執行。
因為javascript可能會來操作HTML文檔的DOM樹,所以,瀏覽器一般都不會像並行下載css文件並行下載js文件,因為這是js文件的特殊性造成的。所以,如果你的javascript想操作後面的DOM元素,基本上來說,瀏覽器都會報錯說物件找不到。因為Javascript執行時,後面的HTML被阻塞住了,DOM樹時還沒有後面的DOM結點。所以程序也就報錯了。
傳統的方式
所以,當你在程式碼中寫下如下的程式碼:
<scripttype="text/javascript" src="http://coolshell.cn/asyncjs/alert.js"></script>
基本上來說,head裡的