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

2016-02-19 13:55 18 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是jquery.lazyload 实现图片延迟加载jquery插件,一起来学习了解下吧!

【 tulaoshi.com - Web开发 】

什么是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" /

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

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

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

来源:https://www.tulaoshi.com/n/20160219/1605643.html

延伸阅读
标签: Web开发
FullScreen Image-Gallery   SupersizedGallery   ImageRotator   Galleria   Content-Gallery   Galleriffic   EasySlider 看中文介绍的猛点此处: http://jsssc.cn/easy-slider-15-the-easiest-jquery-plugin-for-sliding/   ImageScroller   ...
标签: Web开发
  文件打包下载 代码如下: /* **************图片预加载插件****************** ///作者:没剑(2008-06-23) ///http://regedit.cnblogs.com ///说明:在图片加载前显示一个加载标志,当图片下载完毕后显示图片出来 可对图片进行是否自动缩放功能 此插件使用时可让页面先加载,而图片后加载的方式, 解决了平时使用时要在图片显...
标签: Web开发
在网络发展领域,由于 jQuery 简单易学,易于使用和易于扩展的特点,因此正慢慢变得无处不在。以下是从一些 jQuery 相关文章中整理出来的 30+ 新鲜与惊奇的 jQuery 插件与教程。如果你正在寻找最新的 jQuery 信息,这些内容值得一读。 教程 1. 在图像画廊载入过程中使用 jQuery 预加载技术。 | 2. 创建一个独特的熔岩灯动画效果的 j...
标签: Web开发
简化后的插件: SimplePlugin.htm: 代码如下: !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http://www.w3.org/1999/xhtml" head title简化后的插件/title script type="text/ecmascript" src="../js/jquery-1.2.6.js"/script script ty...
标签: Web开发
先把要用到的文件依次进入进来: 代码如下: script src="common/jquery.js" type="text/javascript"/script script src="common/jquery.pagination.js" type="text/javascript"/script link href="common/tablesorter.css" rel="stylesheet" type="text/css" / link href="common/pagination.css" rel="stylesheet" type="text/css" / ...

经验教程

167

收藏

14
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部