18,頁面優(yōu)化

// 一、圖片
1,修飾類的圖片有css代替
2,根據(jù)具體屏幕,用小圖代替
3,小圖使用base64格式
4,雪碧圖(多個(gè)圖整合在一起)
5,webP有更好的壓縮算法(但兼容性差一點(diǎn))
6,小圖用png或者svg(SVG 使用 XML 格式定義圖像??煽s放矢量圖),大圖用jpg

// 二、域名的預(yù)解析
<link rel="dns-prefetch" >
dns-prefetch?作用簡單說明就是當(dāng)你瀏覽網(wǎng)頁時(shí),
瀏覽器會(huì)加載網(wǎng)頁時(shí)對(duì)網(wǎng)頁中的域名進(jìn)行解析緩存,
這樣在你單擊當(dāng)前網(wǎng)頁鏈接無需DNS解析,減少瀏覽者等待時(shí)間

// 三、預(yù)加載
<link rel="preload" >
不在首頁用到,但是后面極大可能會(huì)用,而且很大,就提前去加載。不會(huì)阻塞onload事件

// 四、預(yù)渲染
<link rel="prerender" >
在后臺(tái)提前渲染(后面大概率會(huì)打開。不然會(huì)浪費(fèi))


// 五、懶執(zhí)行
首屏優(yōu)化。耗時(shí)邏輯并不需要在首屏就使用的,就可以使用懶執(zhí)行。
通過事件或定時(shí)器觸發(fā)

// 六、懶加載
懶加載就是將不關(guān)鍵的資源延后加載。
比如圖片,先放一個(gè)src占位。對(duì)應(yīng)的圖片鏈接放在自定義區(qū)域,只有執(zhí)行到該區(qū)域后,才替換屬性-src。video也可以這樣,顯示區(qū)域才去加載

// 七、CDN

// 三、節(jié)流。(scroll的時(shí)候不希望一直發(fā)請(qǐng)求。而是間隔或者停下的時(shí)候發(fā))
    let now = +new Date()
    // 將當(dāng)前時(shí)間和上一次執(zhí)行函數(shù)時(shí)間對(duì)比
    // 如果差值大于設(shè)置的等待時(shí)間就執(zhí)行函數(shù)
    if (now - lastTime > wait) {
      lastTime = now
      func

// 四、防抖
    return function(...args) {
    if (timer) clearTimeout(timer)
    timer = setTimeout(() => {
      func.apply(this, args)
    }, wait)




?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容