博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery.lazyload 实现图片延迟加载jquery插件
阅读量:5074 次
发布时间:2019-06-12

本文共 1991 字,大约阅读时间需要 6 分钟。

看到了淘宝产品介绍中,图片是在下拉滚动条时加载,这是一个很不错的用户体验。减少了页面加载的时间了,也减轻了服务器的压力,就查了下用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 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>
配置参数如下:

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

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

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

可查看

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

LazyLoad技术运用的淋漓尽致;

 

文章来自:http://www.jb51.net/article/21987.htm

转载于:https://www.cnblogs.com/webqiand/p/4757350.html

你可能感兴趣的文章
163邮箱tab制作
查看>>
html模板
查看>>
机器学习之路: python 支持向量机 LinearSVC 手写字体识别
查看>>
Python基础——6面向对象编程
查看>>
大一C语言第一次实验:小学生教学系统
查看>>
Object-c NSdata 读取和写入二进制文件
查看>>
IOS设计模式的六大设计原则之接口隔离原则(ISP,Interface Segregation Principle)
查看>>
计算机网络(谢希仁 第七版)运输层 个人笔记
查看>>
设计模式之七:适配器模式(火鸡转换成鸭子)
查看>>
面向对象进阶
查看>>
操刀 requirejs,自己动手写一个
查看>>
初学jmeter
查看>>
C#画图
查看>>
Date类型 - 实践
查看>>
代码复审
查看>>
第四十篇 入门机器学习——Numpy.array的基本操作——向量及矩阵的运算
查看>>
Elasticsearch学习之深入聚合分析五---案例实战
查看>>
CF #355div2 D 宝藏与钥匙 dp 二维数组智商题
查看>>
基于S3C2440的linux-3.6.6移植——LED驱动【转】
查看>>
linux设备驱动归纳总结(四):3.抢占和上下文切换【转】
查看>>