通过jquery.lazyload.js脚本插件实现图片随滚动条渐显的华丽效果。可加速多图片页面的载入速度,让其尽快显示在浏览者眼前。特适用于存在大量图片的页面.

实现原理:

jquery.lazyload.js是一个用 JavaScript 编写的 jQuery 插件。它可以延迟加载长页面中的图片,通过判断浏览者是否在查看当前图片,若不是则默认加载预设的填充图片“grey.gif”,直到浏览者滑动鼠标滚轮或浏览到图片位置时,真正的图片才会得以加载。

在包含很多大图片长页面中延迟加载图片可以加快页面加载速度。浏览器将会在加载可见图片之后即进入就绪状态。在某些情况下还可以帮助降低服务器负担。

实现方法:

只需在网站页面头部加入js代码即可实现。

1、下载并上传相关文件

下载 jquery-1.4.2.min.js

下载 jquery.lazyload.js

下载 预填充图片 grey.gif

2、在当前主题的“header.php”中适当位置添加下面JS调用代码。
 

 
  
  1. <script type="text/javascript" src="jquery-1.7.2.min.js"></script> 
  2. <script type="text/javascript" src="jquery.lazyload.js"></script> 
  3. <script type="text/javascript"> 
  4. jQuery(document).ready( 
  5. function($){ 
  6. $("img").lazyload({ 
  7. placeholder : "grey.gif", 
  8. effect      : "fadeIn" 
  9. }); 
  10. }); 
  11. </script> 
  12. <style> 
  13. .container{ 
  14.     width:100%; 
  15.     height:100%; 
  16.     margin:auto; 
  17.     border:1px solid #eee; 
  18. </style> 
  19. <div class="container"> 
  20.     <img src="Sunset.jpg" /> 
  21.     <img src="Sunset.jpg" /> 
  22.     <img src="Sunset.jpg" /> 
  23.     <img src="Sunset.jpg" /> 
  24.     <img src="Sunset.jpg" /> 
  25.     <img src="Sunset.jpg" /> 
  26.     <img src="Sunset.jpg" /> 
  27.     <img src="Sunset.jpg" /> 
  28.     <img src="Sunset.jpg" /> 
  29.     <img src="Sunset.jpg" /> 
  30.     <img src="Sunset.jpg" /> 
  31.     <img src="Sunset.jpg" /> 
  32.     <img src="Sunset.jpg" /> 
  33.     <img src="Sunset.jpg" /> 
  34.     <img src="Sunset.jpg" /> 
  35. </div> 

官方演示地址:http://www.appelsiini.net/projects/lazyload/enabled_fadein.html


$("img") 可以用来限定对页面中的哪些img生效,如只针对内容部分可修改为 $(".content img")

 

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张可见区域外的图片,以避免出现这个问题.

 

更多详细介绍:

http://blog.sina.com.cn/s/blog_6967301a0100q4s2.html