您的位置:首页 > Web前端 > JQuery

jquery.lazyload.js实现图片延迟加载——wordpress图片随滚动条渐显效果

2011-07-07 22:53 1166 查看
看到Louis Han的博客有个图片随滚动条渐显的效果,感觉既华丽又能节省资源,一举两得,于是就开始研究。
通过查看其源代码以及google搜索知识,初步搞明白了,它是通过一个js来实现的,下面就来介绍一下:

特效优点:

加速wordpress站点的页面载入速度;
不唐突的图片渐显方式;
代码精简,便于操作维护,JS代码仅仅 1.6KB 先决条件是:你的站加载了 Jquery.js

原理:

这个特效是少有的即华丽又加速的效果,因为它能判断访客是不是在查看当前图片,若非则加载预留的填充图片 grey.gif ,等到访客滑动鼠标滑轮或浏览到图片位置时,真正的图片地址才会加载。
也就是说,如果访客瞬间打开你的页面,然后瞬间关闭,处于页脚的图片是不被加载的,何乐而不为呢?
不用担心对访客的友好程度,这个效果会在图片即将被浏览到的时候就开始加载图片。

实现方法:

下载 jquery.lazyload.js
下载 预填充图片fill.gif
点此打包下载

将上面2文件,放到wordpress的某个目录,或者你直接在外站调用。(我是传到pic.imtimmy.com上调用的)
在当前主题的 header.php 中适当位置添加下面 JS调用代码,我当期用的inove主题后台就有添加js代码的地方:
【http://pic.imtimmy.com/wp-content/js/lazyload/部分请自定义】
【$("img")部分可以限定对页面中的哪些img生效】比如修改成 $(".content img")
<script type="text/javascript" src="http://pic.imtimmy.com/wp-content/js/lazyload/jquery.lazyload.js"></script>
<script type="text/javascript">
jQuery(document).ready(
function($){
$("img").lazyload({
placeholder : "http://pic.imtimmy.com/wp-content/js/lazyload/grey.gif",
effect      : "fadeIn"
});
});
</script>

Jquery.LazyLoad.js插件参数详解:
下面对LazyLoad插件的一些参数进行说明,供使用者做出更贴切的效果。1,用图片提前占位
placeholder : "img/grey.gif",
参数:placeholder,值为某一图片路径.此图片用来占据将要加载的图片的位置,待图片加载时,占位图则会隐藏2,载入使用何种效果
effect : "fadeIn",
参数:effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn
3,提前开始加载
threshold : 200,
参数:threshold,值为数字,代表页面高度.如设置为200,表示滚动条在离目标位置还有200的高度时就开始加载图片,可以做到不让用户察觉.
4,事件触发时才加载
event : "click",
参数:event,值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…).可以实现鼠标莫过或点击图片才开始加载,后两个值未测试…
5,对某容器中的图片实现效果
container: $("#container"),
参数:container,值为某容器.lazyload默认在拉动浏览器滚动条时生效,这个参数可以让你在拉动某DIV的滚动条时依次加载其中的图片
6,图片排序混乱时
failurelimit : 10,
参数:failurelimit,值为数字.lazyload默认在找到第一张不在可见区域里的图片时则不再继续加载,但当HTML容器混乱的时候可能出现可见区域内图片并没加载出来的情况,failurelimit意在加载N张可见区域外的图片,以避免出现这个问题.
详细出处参考:/article/1255939.html

转自:http://imtimmy.com/jquery-lazyload-for-wordpress-img/?utm_source=rss&utm_medium=rss&utm_campaign=jquery-lazyload-for-wordpress-img

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: