关于前端惰性加载(jquery_lazyload)的使用和原理分析
2017-01-12 09:42
302 查看
1.前言
有时我们会有这样的需求,当网页有很多张图片的时候,我们不希望一次性就把图片加载完,而是希望当浏览器滑动到指定位置的时候再加载,这样可以节省带宽,它也能帮助减轻服务器负载。那么这种需求就需要利用lazyload了。jquery_lazyload.js是基于jq的一个扩展,需要引入jq后使用。
2.使用方法
2-1.引入jquery和lazyload拓展
<script src="jquery-1.11.0.min.js"></script> <script src="jquery.lazyload.js?v=1.9.1"></script>
2-2.通过class指定标签,src指定家在前的图片,data-original指定加载后的图片。
<img class="lazy" src="img/jd.png" data-original="img/bmw_m1_hood.jpg"> <img class="lazy" src="img/jd.png" data-original="img/bmw_m1_side.jpg">
2-3.传递参数绑定lazyload事件
<script type="text/javascript" charset="utf-8"> $(function() { $("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张可见区域外的图片,以避免出现这个问题. }); }); </script>
3.原理分析
TODO4.demo下载
链接:https://share.weiyun.com/5bc1ca957d5074cffca0353ac0b0e2b0 (密码:p7S1)相关文章推荐
- 关于前端惰性加载(jquery_lazyload)的使用和原理分析
- 关于CCTexure2D使用opengl实现绘制的原理分析
- 关于在jquery中使用iscorll实现上拉下拉加载刷新的方法
- jquery关于load()加载页面遇见的坑(js代码使用不了)
- 关于Java的数据结构HashMap,ArrayList的使用总结及使用场景和原理分析
- 使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
- 使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
- 关于java多线程浅析六: CyclicBarrier的原理分析和使用
- 关于引入多个jquery冲突的问题(附一个很好用的validate前端验证框架及使用方法)
- 项目分析之:设计一种前端数据延迟加载的jQuery插件(2)
- jQuery 源码分析和使用心得 - 关于源码
- 献给和我合作的过得前端童靴们:jquery源码分析--核心函数(使用函数作为参数创建jQuery对象)
- jQuery的datatable的使用例子,以及通过例子分析datatable插件的实现过程,即不但要会用,还要懂其原理
- 关于使用jQuery前端上传文件
- 【项目分析】设计一种前端数据延迟加载的jQuery插件(2)
- 关于jQuery的getScript()实现动态js加载,原理,实现过程是怎么样的?
- 关于使用synchronized实现线程安全的原理分析
- 前端设计中关于外部js文件加载的速度优化及minify使用教程
- 图片懒加载的jQuery插件lazyLoad源码分析十八问
- 难点总结:Jquery动态加载数据库中的数据(解答人:郭哲 方式:讲述jquery原理及一些函数的使用方法,学会看帮助文档)