十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章主要講解了實現(xiàn)一個Vue自定義指令懶加載的實例代碼,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
在項目中如果有大量的圖片需要加載的時候,就可以考慮使用懶加載了,懶加載其實就是監(jiān)聽瀏覽器的滾動,當(dāng)滾動到一定的范圍的時候就將圖片的真實路徑賦給src,然后取消監(jiān)聽。實現(xiàn)的方法也比較簡單,可以通過懶加載的插件實現(xiàn),也可以手寫,手寫通過vue自定義指令來實現(xiàn),一般情況自定義指令用的也不多,比較vue自帶的就夠用了,大型復(fù)雜的項目的可能用的多。
什么是圖片懶加載
當(dāng)我們向下滾動的時候圖片資源才被請求到,這也就是我們本次要實現(xiàn)的效果,進入頁面的時候,只請求可視區(qū)域的圖片資源這也就是懶加載。
比如我們加載一個頁面,這個頁面很長很長,長到我們的瀏覽器可視區(qū)域裝不下,那么懶加載就是優(yōu)先加載可視區(qū)域的內(nèi)容,其他部分等進入了可視區(qū)域在加載。
這個功能非常常見,你打開淘寶的首頁,向下滾動,就會看到會有圖片不斷的加載;你在百度中搜索圖片,結(jié)果肯定成千上萬條,不可能所有的都一下子加載出來的,很重要的原因就是會有性能問題。你可以在Network中查看,在頁面滾動的時候,會看到圖片一張張加載出來。
為什么要做圖片懶加載
懶加載是一種網(wǎng)頁性能優(yōu)化的方式,它能極大的提升用戶體驗。就比如說圖片,圖片一直是影響網(wǎng)頁性能的主要元兇,現(xiàn)在一張圖片超過幾兆已經(jīng)是很經(jīng)常的事了。如果每次進入頁面就請求所有的圖片資源,那么可能等圖片加載出來用戶也早就走了。所以,我們需要懶加載,進入頁面的時候,只請求可視區(qū)域的圖片資源。
總結(jié)出來就兩個點:
1.全部加載的話會影響用戶體驗
2.浪費用戶的流量,有些用戶并不像全部看完,全部加載會耗費大量流量。
懶加載原理
圖片的標(biāo)簽是 img
標(biāo)簽,圖片的來源主要是 src屬性,瀏覽器是否發(fā)起加載圖片的請求是根據(jù)是否有src屬性決定的。
所以可以從 img
標(biāo)簽的 src屬性入手,在沒進到可視區(qū)域的時候,就先不給 img 標(biāo)簽的 src屬性賦值。
懶加載實現(xiàn)
實現(xiàn)效果圖:
Document ![]()
![]()
![]()
![]()
![]()
![]()
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。