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

看到了淘宝产品介绍中,图片是在下拉滚动条时加载,这是一个很不错的用户体验。减少了页面加载的时间了,也减轻了服务器的压力,就查了下用JQuery.. 

什么是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 ReaderBing图片搜索就把
LazyLoad技术运用的淋漓尽致;

 

缺陷:

1.与Ajax技术的冲突;

2.图片的延迟加载,遇到高度特别高的图片,会出现停止加载的问题;

3.写代码不规范的同学要注意了,不管由于什么原因,如果您的页面中,img标签的height属性未定义,那么我建议您最好不要使用ImageLazyLoad

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值