懒加载之jQuery图片延迟加载插件jQuery.lazyload

今天给大家介绍一个懒加载插件lazyload.js

使用方法

1.引用jquery和jquery.lazyload.js到你的页面

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


2.html图片调用方法

为图片加入样式lazy  图片路径引用方法用data-original

<img class="lazy" data-original="images/list1.jpg">
<img class="lazy" data-original="images/list2.jpg">
...

3.js

<script type="text/javascript" charset="utf-8">
  $(function() {
      $("img.lazy").lazyload({       
        placeholder : "img/grey.gif",
        effect: "fadeIn"
      });
  });
</script>

效果预览


番外:


1、

$(“img”).lazyload({ threshold : 200 });   
把阀值设置成200 意思就是当图片没有看到之前先load 200像素。当然了你也可以通过设置占位符图片和自定事件来触发加载图片事件
比如:
$("img").lazyload({    
placeholder : "img/grey.gif",    
event : "click"   
});   


2、延迟加载图片,Lazy Load 插件的一个不完整的功能, 但是这也能用来实现图片的延迟加载. 下面的代码实现了页面加载完成后再加载. 页面加载完成 5 秒后, 指定区域内的图片会自动进行加载.

$(function() {    
$("img:below-the-fold").lazyload({    
placeholder : "img/grey.gif",    
event : "sporty"   
});    
});    
$(window).bind("load", function() {    
var timeout = setTimeout(function() {$("img").trigger("sporty")}, 5000);    
});   

3、图片在容器里面你可以将插件用在可滚动容器的图片上, 例如带滚动条的 DIV 元素. 你要做的只是将容器定义为 jQuery 对象并作为参数传到初始化方法里面.
CSS:
#container {    
height: 600px;    
overflow: scroll;    
}   
JavaScript 代码:
$("img").lazyload({    
placeholder : "img/grey.gif",    
container: $("#container")    
});   
此方法可以解决在scroll.js里懒加载无效,主要还是因为懒加载装置里没有设置sroll的容器


参数设置:

$("img.lazy").lazyload({
  placeholder : "img/grey.gif", //用图片提前占位
    // placeholder,值为某一图片路径.此图片用来占据将要加载的图片的位置,待图片加载时,占位图则会隐藏
  effect: "fadeIn", // 载入使用何种效果
    // effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn
  threshold: 200, // 提前开始加载
    // threshold,值为数字,代表页面高度.如设置为200,表示滚动条在离目标位置还有200的高度时就开始加载图片,可以做到不让用户察觉
  event: 'click',  // 事件触发时才加载
    // event,值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…).可以实现鼠标莫过或点击图片才开始加载,后两个值未测试…
  container: $("#container"),  // 对某容器中的图片实现效果
    // container,值为某容器.lazyload默认在拉动浏览器滚动条时生效,这个参数可以让你在拉动某DIV的滚动条时依次加载其中的图片
  failurelimit : 10 // 图片排序混乱时
     // failurelimit,值为数字.lazyload默认在找到第一张不在可见区域里的图片时则不再继续加载,但当HTML容器混乱的时候可能出现可见区域内图片并没加载出来的情况,failurelimit意在加载N张可见区域外的图片,以避免出现这个问题.
});


posted @ 2017-07-06 10:35  昌子玩前端  阅读(21)  评论(0)    收藏  举报  来源