jquery.lazyload.js图片延迟加载(懒加载)--转载

一、插件介绍

jquery.lazyload.js 是一个用 JavaScript 编写的jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置.这与图片预加载的处理方式正好是相反的.在包含很多大图片长页面中延迟加载图片可以加快页面加载速度.浏览器将会在 加载可见图片之后即进入就绪状态. 在某些情况下还可以帮助降低服务器负担. 

  

二、插件作者下载地址 

JS下载:http://www.ijquery.cn/js/lazyload/jquery.lazyload.js 

预览: http://www.ijquery.cn/demo/lazyload 

打包下载:http://www.ijquery.cn/demo/lazyload/lazyload.zip

 

三、兼容性

需要jquery1.3.0版以上,或者 zepto1.0.0以上。

IEChromeFirefoxOperaSafari
IE6+ ✔ Chrome ✔ Firefox ✔ Opera ✔ Safari ✔

 

 

 

四、参数   

placeholder : "img/grey.gif",     //用图片提前占位
effect : "fadeIn",    //载入使用何种效果,effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn
threshold : 200,    //提前开始加载
event : "click",      //事件触发时才加载,event,值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…).可以实现鼠标划过或点击图片才开始加载,后两个值未测试…
failurelimit : 10,     //图片排序混乱时 ,
failurelimit,值为数字.

 

五、最简使用教程

 

lazyload默认在找到第一张不在可见区域里的图片时则不再继续加载,但当HTML容器混乱的时候可能出现可见区域内图片并没加载出来的情况,failurelimit意在加载N张可见区域外的图片,以避免出现这个问题.

加载JS代码 

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

  

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

<img class="lazy" data-original="img/bmw_m1_hood.jpg">
<img class="lazy" data-original="img/bmw_m1_side.jpg">
<img class="lazy" data-original="img/viper_1.jpg">
<img class="lazy" data-original="img/viper_corner.jpg">
<img class="lazy" data-original="img/bmw_m3_gt.jpg">
<img class="lazy" data-original="img/corvette_pitstop.jpg">

   

js出始化lazyload并设置图片显示方式

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

 

判断浏览器版本的checkbrowse()

function checkbrowse() {   
    var ua = navigator.userAgent.toLowerCase();   
    var is = (ua.match(/\b(chrome|opera|safari|msie|firefox)\b/) || ['', 'mozilla'])[1];   
    var r = '(?:' + is + '|version)[\\/: ]([\\d.]+)';   
    var v = (ua.match(new RegExp(r)) || [])[1];   
    jQuery.browser.is = is;   
    jQuery.browser.ver = v;   
    return {   
    'is': jQuery.browser.is,   
    'ver': jQuery.browser.ver   
  }   
} 

 

posted @ 2016-03-09 12:24  Aaronguo  阅读(7911)  评论(1编辑  收藏  举报