頁面的加載與渲染順序


頁面的加載與渲染順序:

1.一個頁面的加載順序是從上到下順序加載的,並且加載與渲染同時進行。

2.引用外部js文件時,當在加載過程中遇到<script>標簽時,瀏覽器會向服務器發送一個reques並等待該request的返回。

因為瀏覽器需要1個穩定的DOM樹結構,而JS中很有可能有代碼直接改變了DOM樹結構,比如使用document.write 或 appendChild,甚至是直接使用的location.href進行跳轉,瀏覽器為了防止出現JS修改DOM樹,需要重新構建DOM樹的情況,所以加載js就會阻塞其后內容的下載和呈現。

3.使用嵌入式js時,會阻塞所有內容的呈現。

4.當在加載過程中遇到<style>標簽時,瀏覽器會發1個request去請求CSS或image,然后繼續執行下面的轉換,而不需要等待request的返回,當request返回后,只需要把返回的內容放入到DOM樹中對應的位置就OK,所以正常來說CSS並不會諸塞頁面。

但是也有例外:

當CSS后面跟着嵌入的JS的時候,該CSS就會出現阻塞后面資源下載的情況。

原因:

因為瀏覽器會維持html中css和js的順序,樣式表必須在嵌入的JS執行前先加載、解析完。而嵌入的JS會阻塞后面的資源加載,所以就會出現上面CSS阻塞下載的情況。
————————————————
版權聲明:本文為CSDN博主「圓㺭」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/chang_yuan_2011/article/details/7497458


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM