
咨詢電話:0531-83188567
發(fā)布時間:2020-11-25 09:26:12
延遲加載圖像是指異步加載網(wǎng)站上的圖像-也就是說,在首屏內(nèi)容完全加載后,甚至有條件地,僅當(dāng)它們出現(xiàn)在瀏覽器的視口中時。這意味著,如果用戶沒有完全向下滾動,則位于頁面底部的圖像甚至都不會被加載。
許多網(wǎng)站都使用這種方法,但是在圖片繁多的網(wǎng)站上尤其明顯。嘗試瀏覽您最喜歡的在線狩獵場以獲得高分辨率照片,您很快就會意識到該網(wǎng)站僅加載有限數(shù)量的圖像的方式。向下滾動頁面時,您會看到占位符圖像迅速填充真實圖像進(jìn)行預(yù)覽。例如,請注意下圖中的加載程序:將頁面的該部分滾動到視圖中會觸發(fā)使用全分辨率照片替換占位符:

至少有兩個極好的原因,您應(yīng)該考慮為網(wǎng)站延遲加載圖像:
好吧,延遲加載圖像有助于提高網(wǎng)站性能,但是最好的解決方法是什么?
沒有完美的方法。
如果您生活和呼吸JavaScript,那么實現(xiàn)自己的延遲加載解決方案就不會成為問題。沒有什么比您自己編寫代碼給您更多的控制權(quán)了。
或者,您可以瀏覽Web以找到可行的方法并開始進(jìn)行試驗。我就是這樣做的,并且遇到了這五種有趣的技術(shù)。
圖像和iframe的本機(jī)延遲加載非???。沒有什么比下面的標(biāo)記更直接了:
<img src="myimage.jpg" loading="lazy" alt="..." />
<iframe src="content.html" loading="lazy"></iframe>
如您所見,沒有JavaScript,沒有src屬性值的動態(tài)交換,只是普通的舊HTML。
該loading屬性使我們可以選擇延遲屏幕外圖像和iframe,直到用戶滾動到頁面上的位置為止。loading可以采用以下三個值之一:
lazy:非常適合延遲加載eager:指示瀏覽器立即加載指定的內(nèi)容auto:保留延遲加載或不延遲加載到瀏覽器的選項。這種方法無可匹敵:它的開銷為零,簡潔明了。但是,盡管在撰寫本文時,大多數(shù)主流瀏覽器都對該loading屬性提供了良好的支持,但并不是所有瀏覽器都支持該特性。
要獲得有關(guān)此令人敬畏的延遲加載圖像功能的深入文章,包括瀏覽器支持的解決方法,請不要錯過Addy Osmani的“ Web的本地圖像延遲加載!”。