jQuery图片延迟加载插件jQuery.lazyload 的使用
Posted 面朝阳光/
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery图片延迟加载插件jQuery.lazyload 的使用相关的知识,希望对你有一定的参考价值。
使用方法
引用jquery和jquery.lazyload.js到你的页面
1
2
|
< script src = "jquery-1.11.0.min.js" ></ script > < script src = "jquery.lazyload.js?v=1.9.1" ></ script > |
html图片调用方法
为图片加入样式lazy 图片路径引用方法用data-original
1
2
3
4
5
6
|
< 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并设置图片显示方式
1
2
3
4
5
|
$( function () { $( "img.lazy" ).lazyload({effect: "fadeIn" }); }); </script> |
在图片中也可以不使用 class="lazy",初始化时使用:
1
|
$( "img" ).lazyload({effect: "fadeIn" }); |
这样就可以对全局的图片都有效!
如果想提前载入图片,可以使用 threshold 进行设置,
1
|
$( "img.lazy" ).lazyload({ threshold :180}); |
以上实例的含义是:在图片距离屏幕180px时提前载入:
引入
1
2
|
< script src = "jquery-1.11.0.min.js" ></ script > < script src = "jquery.lazyload.js?v=1.9.1" ></ script > |
路径依据实际目录来确定。
1
2
3
4
5
|
<script type= "text/javascript" charset= "utf-8" > $( function () { $( "img.lazy" ).lazyload({effect: "fadeIn" }); }); </script> |
图片引用lazyload 方式
1
|
< img class = "lazy" data-original = "img/bmw_m1_hood.jpg" /> |
参数设置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
$( "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张可见区域外的图片,以避免出现这个问题. }); |
以上是关于jQuery图片延迟加载插件jQuery.lazyload 的使用的主要内容,如果未能解决你的问题,请参考以下文章
如何确保Magento 2中的RequireJS在加载其他脚本之前加载jQuery?我发现嵌套需要解决这个问题