瀏覽器中的阻塞載入和非同步載入

2021-07-30 17:31:33 字數 469 閱讀 1183

昨天在優化專案中的乙個外掛程式,遇到乙個很嚴重的問題。js的非同步載入。

一般情況,瀏覽器在載入頁面當中的js,都是阻塞載入的,也就是從上到下,載入完乙個才繼續載入下乙個。我的外掛程式是依賴jquery庫才能執行的。

我的解決方式有3種:

1.定時器,延遲載入,讓這個外掛程式在jquery之後執行就可以。settimeout("chajian()", 1000);

2.使用defer或者async屬性,例如:,加上 defer 等於在頁面完全在入後再執行,相當於 window.onload ,但應用上比 window.onload 更靈活!使用async時,指令碼相對於頁面的其餘部分非同步地執行(當頁面繼續進行解析時,指令碼將被執行),也就是先執行他,不過需要注意,async這個屬性盡量不要在jquery引入時使用。

3.第三種方式就是ajax了,在頁面載入完之後引入這個js.例如:

$(document).ready(function());

js的阻塞載入 延遲載入和非同步載入

1.阻塞載入 平常預設使用的都是阻塞載入。例如 阻塞載入會阻止瀏覽器的後續處理,停止了後續的檔案的解析,執行,如影象的渲染。為了這樣可以讓頁面先顯示出來,我們通常會把要載入的js放到body結束標籤之前,使得js可在頁面最後載入,儘量減少阻塞頁面的渲染。2.延遲載入 延遲載入是指令碼延遲到文件被完全...

瀏覽器載入過程

瀏覽器載入過程 載入過程 2.瀏覽器根據ip位址向伺服器發起http請求 包括三次握手 3.伺服器處理http請求,並返回給瀏覽器 渲染過程 1.瀏覽器根據html 生成dom樹 2.瀏覽器根據css 生成cssom 3.將dom樹和cssom整合形成render 樹 渲染樹 只有dom樹是無法渲染...

jquery 延遲載入(瀏覽器滾動載入)

越來越多的 實現了動態載入,瀑布型 qq空間,sina等大型 會效能和使用者的體驗越來越嚴格 減少伺服器的負擔,加快 的瀏覽速度,都是 技術人員人人在做的!下面是拉動瀏覽器滾動條才實現的載入 第一屏的內容 第一屏的內容 第一屏的內容 第一屏的內容 第一屏的內容 第一屏的內容 第一屏的內容 第一屏的內...