最新文章專題視頻專題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

深入研究jQuery圖片懶加載 lazyload.js使用方法

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:32:45
文檔

深入研究jQuery圖片懶加載 lazyload.js使用方法

深入研究jQuery圖片懶加載 lazyload.js使用方法:lazyload是一個(gè)用Javascript編寫的jQuery插件,它可以延遲加載長(zhǎng)頁(yè)面中的圖片,在瀏覽器可視區(qū)域外的圖片將不會(huì)被載入,直到用戶將它們滾動(dòng)到它們所在的位置。 跟bootstrap一樣,lazyload.js也是依賴于jQuery <script src=reso
推薦度:
導(dǎo)讀深入研究jQuery圖片懶加載 lazyload.js使用方法:lazyload是一個(gè)用Javascript編寫的jQuery插件,它可以延遲加載長(zhǎng)頁(yè)面中的圖片,在瀏覽器可視區(qū)域外的圖片將不會(huì)被載入,直到用戶將它們滾動(dòng)到它們所在的位置。 跟bootstrap一樣,lazyload.js也是依賴于jQuery <script src=reso

lazyload是一個(gè)用Javascript編寫的jQuery插件,它可以延遲加載長(zhǎng)頁(yè)面中的圖片,在瀏覽器可視區(qū)域外的圖片將不會(huì)被載入,直到用戶將它們滾動(dòng)到它們所在的位置。

跟bootstrap一樣,lazyload.js也是依賴于jQuery

<script src="resources/js/jquery-1.8.3.min.js"></script>
<script src="resources/js/jquery.lazyload.min.js"></script>

與之前的圖片引入路徑不同,真實(shí)的圖片路徑不再是用src屬性,而是data-original。src屬性用于引入占位符圖片(當(dāng)然,個(gè)人更推薦占位符不寫在img標(biāo)簽里)。同時(shí),必須設(shè)置img的寬度和高度,給每一個(gè)懶加載的圖片加一個(gè)class比如.lazy
四大屬性必須同時(shí)具備:class   data-original   width  height

<img class="lazy" width="640" height="480" data-original="resources/images/2.jpg">

要想讓所有class為lazy的圖片懶加載,只需要簡(jiǎn)單的一行代碼就可以

<script src="resources/js/jquery-1.8.3.min.js"></script>
<script src="resources/js/jquery.lazyload.min.js"></script>
<script>
 $('img.lazy').lazyload( );
</script>
</body>
</html>

設(shè)置臨界點(diǎn)

默認(rèn)情況下,圖片會(huì)出現(xiàn)在顯示區(qū)域時(shí)才加載,如果想提前加載圖片,可以設(shè)置 threshold 選項(xiàng),比如設(shè)置thredshold為200,令圖片在距離顯示區(qū)域200px時(shí)提前加載

$('img.lazy').lazyload({
 threshold:200,
});

設(shè)置占位符

前面提到過(guò),可以用img標(biāo)簽的src屬性引入一個(gè)圖片,比如loading.gif,替代未進(jìn)去顯示區(qū)域的待加載圖片,我們同樣可以添加 placeholder 選項(xiàng)來(lái)實(shí)現(xiàn)

$('img.lazy').lazyload({
 placeholder:'resources/images/loading.gif'
});

設(shè)置事件來(lái)觸發(fā)加載

可以用jQuery事件如click,mouseover,也可以用自定義事件,默認(rèn)情況下,是要等到用戶向下滾動(dòng)并且圖像出現(xiàn)在顯示區(qū)域時(shí)才觸發(fā)。比如:只有當(dāng)用戶點(diǎn)擊的時(shí)候才加載圖片

$('img.lazy').lazyload({
 event:'click'
});

使用特效

默認(rèn)情況下,插件等待圖像完全加載后調(diào)用show()方法來(lái)顯示圖片,我們也可以用一些特效比如:fadeIn

$('img.lazy').lazyload({
 effect:'fadeIn'
});

圖片在容器里面

可用在容器可滾動(dòng)的圖片上,例如帶滾動(dòng)條的DIV元素,需要將容器定義為jQuery對(duì)象,并作為參數(shù)傳到初始化方法里面,比如:垂直滾動(dòng)

#container {
 height: 600px;
 overflow: scroll;
}

<img class="lazy" data-original="img/example.jpg" width="765" height="574">

$("img.lazy").lazyload({ 
 effect : "fadeIn",
 container: $("#container")
});

當(dāng)圖片不順序排列

滾動(dòng)頁(yè)面的時(shí)候, Lazy Load 會(huì)循環(huán)的加載圖片. 在循環(huán)中檢測(cè)圖片是否在可視區(qū)域內(nèi). 默認(rèn)情況下在找到第一張不在可見(jiàn)區(qū)域的圖片時(shí)停止循環(huán). 圖片被認(rèn)為是流式分布的, 圖片在頁(yè)面中的次序和 HTML 代碼中次序相同. 但是在一些布局中, 這樣的假設(shè)是不成立的. 不過(guò)你可以通過(guò) failurelimit 選項(xiàng)來(lái)控制加載行為.

$("img.lazy").lazyload({ 
 failure_limit : 10
});

將 failurelimit 設(shè)為 10 令插件找到 10 個(gè)不在可見(jiàn)區(qū)域的圖片是才停止搜索. 如果你有一個(gè)猥瑣的布局, 請(qǐng)把這個(gè)參數(shù)設(shè)高一點(diǎn).

加載隱藏圖片

可能在你的頁(yè)面上埋藏可很多隱藏的圖片. 比如插件用在對(duì)列表的篩選, 你可以不斷地修改列表中各條目的顯示狀態(tài). 為了提升性能, Lazy Load 默認(rèn)忽略了隱藏圖片. 如果你想要加載隱藏圖片, 請(qǐng)將 skip_invisible 設(shè)為 false

$("img.lazy").lazyload({ 
 skip_invisible : false
});

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

深入研究jQuery圖片懶加載 lazyload.js使用方法

深入研究jQuery圖片懶加載 lazyload.js使用方法:lazyload是一個(gè)用Javascript編寫的jQuery插件,它可以延遲加載長(zhǎng)頁(yè)面中的圖片,在瀏覽器可視區(qū)域外的圖片將不會(huì)被載入,直到用戶將它們滾動(dòng)到它們所在的位置。 跟bootstrap一樣,lazyload.js也是依賴于jQuery <script src=reso
推薦度:
標(biāo)簽: 圖片 使用 js
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top