-
js了解一下:
一直以來都是將js文件寫在 </body>之前强霎,外部引入的js腳本文件也同樣放在這個位置忿项。卻只知道一個模糊的大 概原因,現(xiàn)在來深度剖析一下城舞。
2.該把js文件放在html那個位置呢轩触?
首先了解頁面結(jié)構(gòu),瀏覽器組成的都會明白一點家夺。在我使用Google瀏覽器訪問一個頁面的時候脱柱,谷歌的webkit頁
面渲染引擎 渲染頁面之前,需要通過解析html標記來構(gòu)建DOM樹拉馋。如果解析器遇到了一個腳本榨为,就會停下來執(zhí)行這
個腳本,然后才會繼續(xù)解析html煌茴。要是遇到的是一個外部引用的腳本随闺,他就必須停下來等待這個腳本資源的下載,這
樣就會降低頁面首次的渲染時間景馁。并且引入外部腳本會阻塞瀏覽器的并行下載板壮,跟圖片不一樣,瀏覽器一個只能同時
從服務(wù)器并行加載兩個腳本合住,也就是說我們的網(wǎng)站加載腳本的時候绰精,瀏覽器不會再啟動其他任何下載撒璧。所以js文件不
管外部的還是本頁面的我一般都是會寫或引入在</body>之前。
但是里笨使,也并不是都一股腦的放在head里面就是了卿樱,看一下一些大的網(wǎng)站很多腳本還是會放在頭部的,這里涉及
到一個新的屬性:async(只限于外部腳本的引入)硫椰。自行百度去吧繁调。。
還有的就是一些不得不引入到頭部的腳本靶草,比如說jquery必須放在jquery代碼之前才能保證代碼的正常運行蹄胰,這總不能引入到body里面吧