資源加載順序
js放到boby底部加載搏存,先加載dom和css
異步加載js
defer:異步加載,在HTML解析完成后執(zhí)行矢洲。defer的實(shí)際效果與將代碼放在body底部類似
async::異步加載璧眠,加載完成后立即執(zhí)行
減少資源大小
1、壓縮圖片,移動(dòng)端的單張圖片最好不要超過(guò)50kb责静,遵循在保證圖片質(zhì)量的情況下圖片大小最小的原則袁滥。圖片壓縮工具:免費(fèi)的tinypng,價(jià)值69.9元的pp鴨
最好的辦法灾螃,打包交給專業(yè)的UI壓縮圖片
2题翻、壓縮混淆并減少無(wú)用js,代碼規(guī)范化
3腰鬼、壓縮并減少無(wú)用css
減少請(qǐng)求數(shù)量
絕大部分的主流瀏覽器(如chrome)嵌赠,支持的最大并發(fā)數(shù)為6個(gè)
1、合并當(dāng)前頁(yè)面引入的js和css文件
2垃喊、減少圖片的請(qǐng)求
- 雪碧圖(css sprite)猾普,把小圖標(biāo)放到一張圖片上,利用background-position顯示對(duì)應(yīng)的圖片
- 在無(wú)法使用雪碧圖的情況下本谜,小圖標(biāo)也可以轉(zhuǎn)為base64初家,雖然會(huì)增加大小但無(wú)需發(fā)送請(qǐng)求
- 可以使用字體圖標(biāo)
- 能用css實(shí)現(xiàn)不要用圖片
- 使用延遲加載
3、避免重定向
- 301和302都為重定向乌助,重定向會(huì)延遲整個(gè)HTML文檔的傳輸溜在,并且增加請(qǐng)求次數(shù),在這次要優(yōu)化的項(xiàng)目中就發(fā)現(xiàn)了他托,存在很多的重定向掖肋。資源都已經(jīng)遷移過(guò)來(lái)了,沒(méi)有必要重定向
- 避免使用空的src和href赏参,a標(biāo)簽設(shè)置空的href志笼,會(huì)重定向到當(dāng)前的頁(yè)面地址
4、使用瀏覽器緩存
服務(wù)端設(shè)置請(qǐng)求頭的Cache-Control
靜態(tài)資源CDN部署
Content Delivery Network把篓,即內(nèi)容分發(fā)網(wǎng)絡(luò)纫溃,提高用戶訪問(wèn)的響應(yīng)速度