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 相关文章推荐
奇妙的js
Sep 24 Javascript
jquery关于页面焦点的定位(文本框获取焦点时改变样式 )
Sep 10 Javascript
在服务端(Page.Write)调用自定义的JS方法详解
Aug 09 Javascript
js动态添加onclick事件可传参数与不传参数
Jul 29 Javascript
jQuery插件之Tocify动态节点目录菜单生成器附源码下载
Jan 08 Javascript
ECMAScript6--解构
Mar 30 Javascript
react.js使用webpack搭配环境的入门教程
Aug 14 Javascript
基于vue实现可搜索下拉框定制组件
Mar 26 Javascript
详解如何webpack使用DllPlugin
Sep 30 Javascript
如何利用javascript接收json信息并进行处理
Aug 06 Javascript
js实现拖拽元素选择和删除
Aug 25 Javascript
原生js实现弹幕效果
Nov 29 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
最小化数据传输――在客户端存储数据
2006/10/09 PHP
php include的妙用,实现路径加密
2008/07/29 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】
2016/05/06 PHP
PHP实现的简单sha1加密功能示例
2017/08/27 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
javascript禁用键盘功能键让右击及其他键无效
2013/10/09 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
纯JS实现根据CSS的class选择DOM
2014/03/22 Javascript
分享20款美化网站的 jQuery Lightbox 灯箱插件
2014/10/10 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
2017/06/13 Javascript
浅谈Angular4中常用管道
2017/09/27 Javascript
vue获取当前点击的元素并传值的实例
2018/03/09 Javascript
Vue登录注册并保持登录状态的方法
2018/08/17 Javascript
[01:07:15]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第二场 1月25日
2021/03/11 DOTA
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
python获取命令行输入参数列表的实例代码
2018/06/23 Python
13个Pandas实用技巧,助你提高开发效率
2020/08/19 Python
python 检测nginx服务邮件报警的脚本
2020/12/31 Python
python drf各类组件的用法和作用
2021/01/12 Python
HTML5文档结构标签
2017/04/21 HTML / CSS
Clearly新西兰:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
博士生入学考试推荐信
2013/11/17 职场文书
个人实用的自我评价范文
2013/11/23 职场文书
国贸类专业毕业生的求职信分享
2013/12/08 职场文书
事业单位公务员的职业生涯规划
2014/01/15 职场文书
如何写求职信
2014/05/24 职场文书
垃圾桶标语
2014/06/24 职场文书
危货运输企业安全生产责任书
2014/07/28 职场文书
廉洁自律个人总结
2015/02/14 职场文书
商标侵权律师函
2015/05/27 职场文书
俄罗斯十大城市人口排名,第三首都仅排第六,第二是北方首都
2022/03/20 杂记
进行数据处理的6个 Python 代码块分享
2022/04/06 Python