Jquery 实现图片懒加载
来源:互联网 发布:中国方言软件 编辑:程序博客网 时间:2024/06/15 12:34
直奔主题,根据jquery 提供的 lazyload.js 插件实现图片懒加载,demo 在最下面
lazyload.js 可以实现图片的分批加载,可以缓解庞大项目的网络压力,使用起来非常方便
代码供上:
<!DOCTYPE html><html> <head> <title>图片懒加载</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <div id="testImage"> <img data-original="../images/test.png"/> <img data-original="../images/test.png"/> <img data-original="../images/test.png"/> <div> <script src="../js/jquery-1.7.2.min.js"></script> <script src="../js/jquery.lazyload.min.js"></script> <script> $(function(){ $("img").lazyload({ placeholder : "../images/placeholder.png", effect : "fadeIn", threshold : 500, container: $("#testImage") }); }); </script> </body></html>
可下载演示代码(含lazyload.js 插件)
从代码中可以看出,图片懒加载需要使用的属性:data-original,这个属性是真实的图片地址
而在页面初始化中配置的参数 placeholder :这个属性的作用是在真实图片没有加载出来时的临时的占位图片,当真实图片加载出来之后,这个占位的图片就会被隐藏。以上即可轻松实现图片的懒加载。
但是可能会存在一些问题,因为没有给图片限制高度,所以只有当界面滚动条滚动或者界面大小发生变化时,可视范围内的图片才会加载(具体愿意我也不太清除。。。。),所以<img height="20" data-original="../images/test.png"/>
这样给image 添加了高度属性之后,在可视范围内的图片就会被立即加载出来
对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张可见区域外的图片,以避免出现这个问题
另附:(这个我也是在别人的博客上看到的,具体没有用过,先记录下)
其实背景图片也可以延迟加载。背景图片图片延迟加载有一个更大的好处是,爬虫爬取时无法爬取到图片,节省了服务器资源。
<div class="lazy" data-original="img/example.jpg" width="640" height="480"></div>
这样,只有当这个div出现在可视视窗内时,背景图才会加载显示。
1 0
- jQuery实现图片懒加载
- Jquery 实现图片懒加载
- jQuery实现图片懒加载
- JQuery.LazyLoad 实现图片懒加载
- jquery.lazyload.js实现图片懒加载
- jquery.lazyload.js 实现图片懒加载
- 用jquery实现图片的懒加载
- jquery.lazyload.js实现图片懒加载
- jQuery实现图片预加载
- jQuery实现图片延迟加载
- jquery实现 图片延迟加载
- jQuery实现图片延迟加载
- jquery实现 图片延迟加载
- jQuery实现图片延迟加载
- jQuery实现图片延迟加载
- jQuery实现图片延迟加载
- JQuery实现Ajax加载图片
- jquery实现图片延时加载
- 最近5年133个Java面试问题列表
- Java字符串模版
- 敏捷开发是什么鬼?
- 开始了解React Native
- 梯度下降法
- Jquery 实现图片懒加载
- Android日志系统探究
- Android笔试总结
- 进程地址空间,堆和栈关系
- CollapsingToolbarLayout使用(可以折叠的Toolbar)
- HBase Thrift2 CPU过高问题分析
- 如何高效使用和管理Bitmap--图片缓存管理模块的设计与实现
- Tomcat 启动分析
- JS中&&和||用法