WebKit之頁面載入

2021-06-16 07:27:14 字數 694 閱讀 6944

website:

webkit在渲染一張頁面之前,首先,需要從網路上載入頁面資料,以及頁面中所使用到的、指令碼、css等資源。然後,通過布局引擎將獲取的資源資訊布局。最後,渲染引擎將資料渲染到瀏覽器的檢視中。那麼,網頁資料資源在webkit中是如何被載入的,以及載入過程中涉及了那些元件模組呢?

在webkit中所有的資源獲取、網頁布局和渲染都是由webcore元件模組負責,webkit在載入頁面時,將預載入的資源分成了兩類,一類是文件,一類是文件中所使用的資源(、指令碼、css等)。對待這兩類資料,webkit也採用了不同的處理流程。

框架載入

資源載入

在解析document的過程中,如果發現文件中引用了、指令碼、css等資源,document物件會建立乙個docloader物件,該對主要負責文件中引用資源的載入。docloader物件,首先會判斷cache系統中是否已經將相應的資料快取在記憶體中(cacheimage物件),如果image已經存在在cache中,則docloader則立即返回該cache的資料。如果image資料並不存在在cache中,則docloader會重新建立乙個cacheimage,該物件會請求subresourceloader載入資源。subresourceloader最終會使用resourcehandle介面和平台相關的網路庫通訊,從網路上獲取指定的資源資料。

webkit派生資源載入流程

參考位址 在派生資源的載入中,subresourceloader 更多起到的是乙個 的作用,通過它的 client subresourceloaderclient 類 來完成操作。各個載入階段的處理在 subresourceloaderclient 的派生類cachedresourcerequest...

IE之頁面載入慢

場景是大屏頁面一張深色背景,裡面一些文字元素以及圖表展示.結果在ie下發現載入異常緩慢,還有部分人員反饋頁面卡死.預設處理邏輯是,imageio讀取原圖,轉成byte,base64編碼後,放到dom裡.這樣越大,後台轉的byte陣列越大也越卡,那麼改進思路自然是壓縮,以及去除imageio讀取.使用...

常用前端效果之頁面載入

利用document.onreadystatechange document.readystate來完成。如下 lang en charset utf 8 titletitle 畫布 loadding loadding pic style src js jquery 1.11.3.js script...