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

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

2010-12-23 15:26 1091 查看
看到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 language="javascript" type="text/javascript" src="../js/lazyload/jquery.lazyload.js"></script>jQuery(document).ready(function($){$("img").lazyload({placeholder : "../js/lazyload/grey.gif",effect : "fadeIn"});});==结束
<mce:script type="text/javascript" src="http://pic.imtimmy.com/wp-content/js/lazyload/jquery.lazyload.js" mce_src="http://pic.imtimmy.com/wp-content/js/lazyload/jquery.lazyload.js"></mce:script>
<mce:script type="text/javascript"><!--
jQuery(document).ready(
function($){
$("img").lazyload({
placeholder : "http://pic.imtimmy.com/wp-content/js/lazyload/grey.gif",
effect      : "fadeIn"
});
});
// --></mce:script>

[/code]
jquery.lazyload.js代码

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'//w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('//b'+e(c)+'//b','g'),k[c])}}return p}('(5($){$.J.L=5(r){8 1={d:0,A:0,b:"h",v:"N",3:4};6(r){$.D(1,r)}8 m=9;6("h"==1.b){$(1.3).p("h",5(b){8 C=0;m.t(5(){6(!$.k(9,1)&&!$.l(9,1)){$(9).z("o")}j{6(C++>1.A){g B}}});8 w=$.M(m,5(f){g!f.e});m=$(w)})}g 9.t(5(){8 2=9;$(2).c("s",$(2).c("i"));6("h"!=1.b||$.k(2,1)||$.l(2,1)){6(1.u){$(2).c("i",1.u)}j{$(2).K("i")}2.e=B}j{2.e=x}$(2).T("o",5(){6(!9.e){$("<V />").p("X",5(){$(2).Y().c("i",$(2).c("s"))[1.v](1.Z);2.e=x}).c("i",$(2).c("s"))}});6("h"!=1.b){$(2).p(1.b,5(b){6(!2.e){$(2).z("o")}})}})};$.k=5(f,1){6(1.3===E||1.3===4){8 7=$(4).F()+$(4).O()}j{8 7=$(1.3).n().G+$(1.3).F()}g 7<=$(f).n().G-1.d};$.l=5(f,1){6(1.3===E||1.3===4){8 7=$(4).I()+$(4).U()}j{8 7=$(1.3).n().q+$(1.3).I()}g 7<=$(f).n().q-1.d};$.D($.P[/':/'],{"Q-H-7":"$.k(a, {d : 0, 3: 4})","R-H-7":"!$.k(a, {d : 0, 3: 4})","S-y-7":"$.l(a, {d : 0, 3: 4})","q-y-7":"!$.l(a, {d : 0, 3: 4})"})})(W);',62,62,'|settings|self|container|window|function|if|fold|var|this||event|attr|threshold|loaded|element|return|scroll|src|else|belowthefold|rightoffold|elements|offset|appear|bind|left|options|original|each|placeholder|effect|temp|true|of|trigger|failurelimit|false|counter|extend|undefined|height|top|the|width|fn|removeAttr|lazyload|grep|show|scrollTop|expr|below|above|right|one|scrollLeft|img|jQuery|load|hide|effectspeed'.split('|'),0,{}))

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