JS實現(xiàn)圖片延遲加載并淡入淡出效果的簡單方法
話不多說,直接看示例
首先是圖片標(biāo)記的寫法
<img data-src="/images/image.jpg" alt="">
需要將圖片的地址放到 data-src 屬性里,而src值不需要,直接將src屬性去掉。
CSS代碼
所有具有data-src屬性的圖片,我們將其初始顯示狀態(tài)為不可見,通過透明度來調(diào)節(jié):
img {
opacity: 1;
transition: opacity 0.3s;
}
img[data-src] {
opacity: 0;
}
這樣寫的作用是什么?等當(dāng)圖片加載時,你就能看的效果了。
JavaScript代碼
我們最終會將 data-src 屬性去掉,換成src屬性,但這是圖片加載成功后的動作:
[].forEach.call(document.querySelectorAll('img[data-src]'), function(img) {
img.setAttribute('src', img.getAttribute('data-src'));
img.onload = function() {
img.removeAttribute('data-src');
};
});
相比起其它各種的圖片延遲加載技術(shù),這種方法非常的簡單,它幾乎不要求其它任何條件,可以用在任何地方,使用起來非常靈活。
但是要注意的是,簡單有簡單的好壞,也會因為簡單而不足。它不具有圖片圖片滾動到可視窗口內(nèi)再加載的功能。最終使用哪種技術(shù),還是要看場景而定。
以上就是本文的全部內(nèi)容,希望對大家的工作和學(xué)習(xí)能有所幫助。
相關(guān)文章
Javascript實現(xiàn)的鼠標(biāo)經(jīng)過時播放聲音
今天突然想起做一個當(dāng)鼠標(biāo)經(jīng)過<a/>時,會發(fā)出聲音2010-05-05
用js+iframe形成頁面的一種遮罩效果的具體實現(xiàn)
用js形成頁面的一種遮罩效果,選擇想要進(jìn)行遮罩的窗口,在這里想要遮罩的是一個iframe窗口,具體的實現(xiàn)如下,感興趣的朋友可以參參考下2013-12-12
深入淺出ES6新特性之函數(shù)默認(rèn)參數(shù)和箭頭函數(shù)
這篇文章主要介紹了深入淺出ES6新特性之函數(shù)默認(rèn)參數(shù)和箭頭函數(shù) 的相關(guān)資料,需要的朋友可以參考下2016-08-08

