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

简介: 看到Louis Han的博客有个图片随滚动条渐显的效果,感觉既华丽又能节省资源,一举两得,于是就开始研究。 通过查看其源代码以及google搜索知识,初步搞明白了,它是通过一个js来实现的,下面就来介绍一下: 特效优点: 加速wordpress站点的页面载入速度; 不唐突的图片渐显方式; 代码精简,便于操作维护,JS代码仅仅 1.

看到Louis Han的博客有个图片随滚动条渐显的效果,感觉既华丽又能节省资源,一举两得,于是就开始研究。

通过查看其源代码以及google搜索知识,初步搞明白了,它是通过一个js来实现的,下面就来介绍一下:

特效优点:

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

 

原理:

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

实现方法:

  1. 下载 jquery.lazyload.js
        下载 预填充图片 fill.gif
        点此打包下载
  2. 将上面2文件,放到wordpress的某个目录,或者你直接在外站调用。(我是传到pic.imtimmy.com上调用的)
  3. 在当前主题的 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" 
 }); 
 });

==结束

 

 

  1. <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>





  2. 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,{}))  

目录
相关文章
|
2月前
|
JavaScript
jQuery实现无缝图片滚动效果
jQuery实现无缝图片滚动效果
147 67
|
3月前
|
前端开发 JavaScript API
使用 JavaScript 实现图片上传
使用 JavaScript 实现图片上传
117 1
|
5月前
|
前端开发 JavaScript
杨老师课堂之JavaScript案例手动切换轮播图片
杨老师课堂之JavaScript案例手动切换轮播图片
34 2
|
5月前
|
前端开发 JavaScript
杨老师课堂之JavaScript案例之自动切换轮播图片
杨老师课堂之JavaScript案例之自动切换轮播图片
31 1
|
2月前
|
JavaScript 前端开发
【原创】用JavaScript动态获取网页中缩放图片的长度、宽度和显示比例
【原创】用JavaScript动态获取网页中缩放图片的长度、宽度和显示比例
|
3月前
|
JavaScript 前端开发
JS - 如何上传 Base64 编码的图片
本文展示了如何将Base64编码的图片在前端转换为Blob对象,并使用`FormData`上传到服务器端的方法。
180 0
|
3月前
|
JavaScript
js之图片上传
js之图片上传
75 0
|
5月前
|
Web App开发 JavaScript 前端开发
使用 JS 实现在浏览器控制台打印图片 console.image()
在前端开发过程中,调试的时候,我们会使用 console.log 等方式查看数据。但对于图片来说,仅靠展示的数据与结构,是无法想象出图片最终呈现的样子的。 虽然我们可以把图片数据通过 img 标签展示到页面上,或将图片下载下来进行预览。但这样的调试过程实在是复杂,何不实现一个 console.image() 呢?
118 1
使用 JS 实现在浏览器控制台打印图片 console.image()
|
4月前
|
JavaScript
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
96 7
下一篇
无影云桌面