jquery.lazyload  实现图片延迟加载jquery插件


Posted in Javascript onFebruary 06, 2010

什么是ImageLazyLoad技术
在页面上图片比较多的时候,打开一张页面必然引起与服务器大数据量的交互。尤其是对于高清晰的图片,占的几M的空间。ImageLazyLoad技术就是,当前可见界面的图片是加载进来的,而不可见页面(通过滚动条下拉可见)中的图片是不加载的,这样势必会引起速度上质的提升。

怎么实现ImageLazyLoad

一、使用JQuery插件 ,插件名: jquery.lazyload(7kb大小),压缩后(3kb大小)

在线压缩js http://closure-compiler.appspot.com/home
虽然是很牛X的特效,不过用JQuery插件只需要短短几句代码,使用过程如下:

1.导入JS插件
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.lazyload.js" type="text/javascript"></script>
2.在你的页面中加入如下的javascript:

$("img").lazyload();

这将会使所有的图片都延迟加载。

当然插件还有几个配置项可供设置。

1.改变threshold

$(“img”).lazyload({ threshold : 200 });

把阀值设置成200 意思就是当图片没有看到之前先load 200像素。

2.当然了你也可以通过设置占位符图片和自定事件来触发加载图片事件

$("img").lazyload({ 
placeholder : "img/grey.gif", 
event : "click" 
});

3.可以通过定义effect 参数来定义一些图片显示效果

$("img").lazyload({ 
placeholder : "img/grey.gif", 
effect : "fadeIn" 
});

LazyLoad(延迟加载)技术不仅仅用在对网页中图片的延迟加载,对数据同样可以,Google Reader和Bing图片搜索就把
LazyLoad技术运用的淋漓尽致;
缺陷:
1.与Ajax技术的冲突;
2.图片的延迟加载,遇到高度特别高的图片,会出现停止加载的问题;
3.写代码不规范的同学要注意了,不管由于什么原因,如果您的页面中,img标签的height属性未定义,那么我建议您最好不要使用ImageLazyLoad

大家可以直接采用淘宝的延迟加载技术:(2kb大小)
http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/imglazyload-min.js
调用方法也是很简单的:
<script src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/imglazyload-min.js"
type="text/javascript"></script> <script type="text/javascript">// <![CDATA[KISSY.ImageLazyload();// ]]></script>
注:该脚本依赖 yahoo-dom-event, 页面中需要加载 yui 2.x,你也可以直接引用下面的地址:
<script src="http://kissy.googlecode.com/svn/trunk/third-party/yui2/yahoo-dom-event/yahoo-dom-event.js" type="text/javascript"></script>

配置参数如下:

<script type="text/javascript"> 
KISSY.ImageLazyload({ 
mod: "manual", // 延迟模式。默认为 auto 
diff: 200 // 当前屏幕下多远处的图片开始延迟加载。默认两屏外的图片才延迟加载 
}); 
</script>

manual 模式时,需要手动将页面中需要延迟加载的图片的 src 属性名更改为 data-lazyload-src. 比如 SRP 页面,宝贝列表的后20个图片延迟加载。 输出时,html 代码为:

<img data-lazy-src="path/to/img" alt="something" />

如果您是Jquery,Prototype等这些JS框架的粉丝,他们都有定制的LazyLoad Plugin提供;

可查看http://www.appelsiini.net/projects/lazyload

LazyLoad(延迟加载)技术不仅仅用在对网页中图片的延迟加载,对数据同样可以,Google Reader和Bing图片搜索就把
LazyLoad技术运用的淋漓尽致;

Javascript 相关文章推荐
基于jquery的页面划词搜索JS
Sep 14 Javascript
百度地图api如何使用
Aug 03 Javascript
JavaScript函数的一些注意要点小结及js匿名函数
Nov 10 Javascript
JavaScript基础知识及常用方法总结
Jan 10 Javascript
jQuery中on绑定事件后引发的事件冒泡问题如何解决
May 25 Javascript
JavaScript性能优化总结之加载与执行
Aug 11 Javascript
JavaScript中String对象的方法介绍
Jan 04 Javascript
微信小程序页面开发注意事项整理
May 18 Javascript
vue项目动态设置页面title及是否缓存页面的问题
Nov 08 Javascript
react脚手架如何配置less和ant按需加载的方法步骤
Nov 28 Javascript
微信小程序组件传值图示过程详解
Jul 31 Javascript
ES6 Generator基本使用方法示例
Jun 06 Javascript
利用jQuery 实现GridView异步排序、分页的代码
Feb 06 #Javascript
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
Feb 04 #Javascript
使用SyntaxHighlighter实现HTML高亮显示代码的方法
Feb 04 #Javascript
JavaScript学习笔记(十七)js 优化
Feb 04 #Javascript
jQuery生成asp.net服务器控件的代码
Feb 04 #Javascript
javascript两段代码,两个小技巧
Feb 04 #Javascript
JavaScript面向对象之静态与非静态类
Feb 03 #Javascript
You might like
php adodb操作mysql数据库
2009/03/19 PHP
PHP5中虚函数的实现方法分享
2011/04/20 PHP
解析将多维数组转换为支持curl提交的一维数组格式
2013/07/08 PHP
PHP中isset、empty的用法与区别示例详解
2020/11/05 PHP
两种方法实现文本框输入内容提示消失
2013/03/17 Javascript
javaScript 页面自动加载事件详解
2014/02/10 Javascript
Javascript中引用示例介绍
2014/02/21 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
js实现获取焦点后光标在字符串后
2014/09/17 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
JS平滑无缝滚动效果的实现代码
2016/05/06 Javascript
jQuery mobile的header和footer在点击屏幕的时候消失的解决办法
2016/07/01 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
基于iScroll实现内容滚动效果
2018/03/21 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
2019/11/14 Javascript
python 全文检索引擎详解
2017/04/25 Python
浅谈Python使用Bottle来提供一个简单的web服务
2017/12/27 Python
Python将多个list合并为1个list的方法
2018/06/27 Python
Python使用Pandas读写Excel实例解析
2019/11/19 Python
Django-silk性能测试工具安装及使用解析
2020/11/28 Python
如何开发一款堪比APP的微信小程序(腾讯内部团队分享)
2016/12/22 HTML / CSS
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
如何将无状态会话Bean发布为WEB服务,只有无状态会话Bean可以发布为WEB服务?
2015/12/03 面试题
数学与统计学院学生个人职业生涯规划书
2014/02/10 职场文书
党员岗位承诺口号大全
2014/03/28 职场文书
2014年党课学习材料
2014/05/11 职场文书
贷款担保申请书
2014/05/20 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
户籍证明书标准模板
2014/09/10 职场文书
业绩倒数第一的检讨书
2014/09/24 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
公司副总经理岗位职责
2015/04/08 职场文书
歌舞青春观后感
2015/06/10 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
Python pandas之求和运算和非空值个数统计
2021/08/07 Python
python manim实现排序算法动画示例
2022/08/14 Python