我在每個頁面上都有一個包含該頁面對象圖像的幻燈片。每個幻燈片通常包含5-6個圖像幻燈片。是否有任何有利於延遲JavaScript的圖像加載?
我在想的是隻在前2張圖片上設置src
屬性,其餘的我只設置data-src
屬性到圖片文件,然後在整個頁面之後加載其餘的圖片加載了此Javascript的幫助:
function loadImages() {
$('#house-carousel .item img').each(function(){
if($(this).attr('data-src')){
$(this).attr('src', $(this).attr('data-src'));
}
});
}
$(document).ready(loadImages);
的思維過程是,由於圖像不顯示給用戶查看網頁的第一秒,我可以延遲加載他們,讓客戶端下載首先在頁面上的其餘內容。
但是現在我又在想......這真的有幫助嗎?我的意思是,圖像不會渲染阻塞;對?那麼,如果我在加載頁面的時候加載它們,或者在頁面加載後加載它們,它真的很重要嗎?
注意,它不是一個「延遲直到用戶查看圖像」的腳本,它只是延遲它,直到其他資源首先加載。
那麼你怎麼看?這真的有幫助嗎?速度測試如http://tools.pingdom.com不顯示任何區別。
這是一個很好的問題。載入1張圖片「必須」更快,以載入更多圖片。所以一切都取決於你的懶惰加載方法。 – Petroff
是的,但它有助於DOM的其他部分加載更快嗎?因爲這是重點。如果我在彼此之後立即加載5張圖片,或者如果我加載1,則繼續DOM的其餘部分,然後加載其他4張圖片。是否有任何性能增益或Percieved性能增益? –
它會更快。我不知道多快。但是如果你沒有加載圖像,這可能會打破你的滑塊。記在心上。 – Petroff