jQuery圖片懶加載插件jquery.lazyload.js使用實例注意事項說明


jQuery圖片懶加載插件jquery.lazyload.js使用實例注意事項說明

jquery.lazyload.js是一個用JavaScript編寫的jQuery插件。它可以延遲加載長頁面中的圖片,在瀏覽器可視區域外的圖片不會被載入。
直到用戶將頁面滾動到它們所在的位置,這與圖片預加載的處理方式正好是相反的。
在包含很多大圖片長頁面中延遲加載圖片可以加快頁面加載速度,瀏覽器將會在加載可見圖片之后即進入就緒狀態,在淘寶商品詳情頁、漫畫網站很多圖片的情況下還可以幫助降低服務器負擔。

一、下載和引用:
官網下載地址:http://plugins.jquery.com/lazyload/
Lazy Load 依賴於 jQuery. 所以需要引用2個js
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.lazyload.js"></script>

注:這里要保證先加載了jquery.js 再加載jquery.lazyload.js,這里的順序不只是先后順序。
如果jquery.js里面用了 defer="defer" 或者異步async,jquery.lazyload.js也要對應加上,否則會導致jquery.lazyload.js先加載報錯。

二、調用說明及注意事項:
要使用懶加載,需要去掉img的src標簽,換成data-original,否則瀏覽器會默認加載src的內容。起不到懶加載的效果。

html代碼
<img width="800" height="1600" data-original="img/test.jpg" />

js代碼
$(document).ready(function(){
$("img").lazyload();
});
注意:這個代碼也需要放到jquery.js加載后,否則會報$ undefined的錯誤

注意:這里必須設置圖片的width,height,data-original否則插件無法正常使用。
這樣設置會將所有的img的並且擁有data-original標簽的圖片更改為懶加載,必須用js處理才會加載圖片,拉下來加載完成前默認為灰色的圖片。


上面是最簡單的調用,特殊的需求如:提前加載,避免網絡過慢時加載緩慢,加載隱藏圖片等等,都有相應的方法可以調用。

1.設置臨界點
默認情況下圖片會出現在屏幕時加載. 如果你想提前加載圖片, 可以設置threshold 選項, 如:設置 threshold 為 200 令圖片在距離屏幕 200 像素時提前加載。
$("img").lazyload({
threshold:200;
});

2.使用特效
默認情況下,圖像完全加載並調用show()。你可以使用任何你想要的效果。下面的代碼使用fadeIn (淡入效果)
$("img").lazyload({
effect:"fadeIn";
});

3.當圖片不連續時
滾動頁面的時候, Lazy Load 會循環為加載的圖片. 在循環中檢測圖片是否在可視區域內. 默認情況下在找到第一張不在可見區域的圖片時停止循環. 圖片被認為是流式分布的, 圖片在頁面中的次序和 HTML 代碼中次序相同. 但是在一些布局中, 這樣的假設是不成立的. 不過你可以通過 failurelimit 選項來控制加載行為。
$("img").lazyload({
failure_limit:20;
});
  將 failurelimit 設為 20 ,當插件找到 20 個不在可見區域的圖片時停止搜索.

4.加載隱藏圖片
當界面有很多隱藏圖片的時候並希望加載他們的時候則使用kip_invisible 屬性,將其設置為false
$("img").lazyload({
skip_invisible:false;
});
上面的方法基本滿足常規的懶加載使用了,特殊的使用可查看官網API


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM