web頁面性能優化系列(1)懶加載和預加載

優化前要了解web基礎知識:

web本質是一個基於B/S架構的GUI軟件
在這裏插入圖片描述
當我們通過網絡進行訪問:是一個動態的,增量的加載靜態資源的過程

瀏覽器的一個請求到返回都經歷了什麼?

在這裏插入圖片描述

整個過程有哪些可以優化的點?

1,dns是否可以通過緩存減少dns的查詢時間
2,網絡請求能否走最近的網絡環境
3,相同的靜態資源能否緩存能否減少http請求的大小
4,減少http請求次數
5,服務端渲染

html,css,js的渲染過程

一、靜態資源
1,html,css,js壓縮,js混淆,文件合合並
解答:具體操作參看webpake:https://mp.csdn.net/mdeditor/84071076#

2、關於圖片
png,jpg,webp等壓縮率,處理,此不贅述,如有特殊處理方式日後補充

二、html,css,js得渲染機制
在這裏插入圖片描述
html得渲染
1,順序執行,併發加載
詞法分析:從上大小解析tag
併發加載:發起資源請求時併發執行得
併發上限:但是併發請求資源有一個上限
2,加載阻塞
3,依賴關係
4,引入方式

css阻塞
1,css在head中需要全部加載完其中內容纔會去進行頁面渲染
2,同時阻塞之後引入得js執行
3,但是css不阻塞js得加載,比如:可能在頁面渲染過程中js有腳本要操作原有css樣式
js阻塞
js直接引入:會阻塞頁面渲染,原因是js可能對文檔結構進行修改
js不阻塞資源得加載:
js順序執行,並且阻塞後續邏輯執行’

懶加載與預加載

懶加載:
方法:圖片進入可視區域請求圖片資源
場景:圖片很多,且頁面很長,
目的:減少在使用時,無效資源的加載
解決:併發加載資源過多,達到併發上限,阻塞js加載,影響功能
在這裏插入圖片描述
在這裏插入圖片描述
預加載:
方法:在使用之前,對靜態資源如圖片進行請求並緩存到用戶終端中提升客戶體驗

原生寫法

在這裏插入圖片描述

庫寫法 PreloadJS 

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章