JO2.ORG

高性能web前端优化
订阅脚儿网
首页 » 实用技巧 » lazyload.js实现图片异步载入

lazyload.js实现图片异步载入

所谓图片异步加载,意思是不用一次把图片全部加载完,你可以叫它延迟加载,缓冲加载都行。

看看你有没有这种需求:某篇文章图片很多,如果在载入文章时就载入所有图片,无疑会延缓载入速度,让用户等更久,所以,我想找这样一种插件,让网页只加载浏览器视野范围内的图片,没出现在范围内的图片就暂不加载,等用户滑动滚动条时再逐步加载。lazyload就是用来实现这种效果。

lazyload.js其实是jQuery的一个插件,全称是jquery.lazyload.js,看它的名字就知道它的作用了——就是偷懒载入的意思。由于它是javascript写的,所以适用于所有网页,包括Wordpress。

使用方法我在Timmy的文章中找到的,非常简单。介绍以WordPress为例。

想要使用lazyload,得先载入jQuery,它是依靠jQuery来实现效果的。至于jQuery,大家不用去下载了,可以直接连接存放在Google服务器上的jQuery文件,永远不用担心丢失(当然,如果有天朝完全屏蔽Google的那一天的话……)

lazyload打包下载:

点此打包下载

压缩包中除了lazyload.js外,还有一个grey.gif图片文件。这个图片的作用是,当页面上图片未载入时,就显示这张图片。将JS文件与图片传到你的空间,然后在你主题的header.php文件中加入代码:

//先载入jquery
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
//再载入lazyload
<script type="text/javascript" src="http://www.jo2.org/js/jquery.lazyload.js"></script>
<script type="text/javascript">
jQuery(document).ready(
function($){
$("img").lazyload({
     placeholder : "http://www.jo2.org/js/grey.gif", //加载图片前的占位图片
     effect      : "fadeIn" //加载图片使用的效果(淡入)
});
});
</script>

保存上传后,你会发现当你将滚动条慢慢下拉时,图片会一张一张加载出来,并带渐显效果,对用户体验非常友好。效果可参照本博客。

本文链接: http://www.jo2.org/archives/106.htm.转载请保留.

留言板

  • 你想说?

过客碎碎念... (33)

  1. 武汉设计公司 说道:

    好啊啊啊

    Thumb up 0 Thumb down 0

    [围观]

  2. [...] http://www.jo2.org/106.html.转载请保留. SEO|互联网 lazyload.js 暂无相关日志 /* */ 评论 (0) [...]

    Thumb up 0 Thumb down 0

  3. lee 说道:

    请问 effect 有什么属性可选?!

    Thumb up 0 Thumb down 0

    [围观]

    十年灯 回复:

    @lee,
    effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn….跟jquery本身带的一样

    Thumb up 0 Thumb down 0

    [围观]

  4. Магсн 说道:

    wordpress 3.0.1自带 jQuery

    Thumb up 0 Thumb down 0

    [围观]

  5. 你的www.jo2.org真的不错把自己的东西跟大家分享,谢谢

    Thumb up 0 Thumb down 0

    [围观]

  6. 阿布 说道:

    IE不能用啊

    Thumb up 0 Thumb down 0

    [围观]

  7. 飞飞 说道:

    恩,这个很不错,之前一直想要实现的效果找不到教程,今天总算解决了,感谢博主!!!! :mrgreen: :mrgreen:

    Thumb up 0 Thumb down 0

    [围观]

  8. 柳城 说道:

    但事实上是有的嘛。。 :arrow:

    Thumb up 0 Thumb down 0

    [围观]

  9. 柳城 说道:

    为啥子你的评论投票功能,点了也没效果阿~~ :?:

    Thumb up 0 Thumb down 0

    [围观]

  10. 柳城 说道:

    为啥子我用了没效果阿。。。 :arrow:

    Thumb up 0 Thumb down 0

    [围观]

    十年灯 回复:

    @柳城,
    你的页面貌似进入时就提示lazyload is not a function。。。好像你lazyload.js没有加载起

    Thumb up 0 Thumb down 0

    [围观]

  11. 双s 说道:

    看不懂代码。。。

    Thumb up 0 Thumb down 0

    [围观]

  12. 北斗天狼 说道:

    呵呵,我一直都在用。

    Thumb up 0 Thumb down 0

    [围观]

  13. 柳城 说道:

    这个不错。有空要拿来用在博客上。 :mrgreen:

    Thumb up 0 Thumb down 0

    [围观]

  14. 北斗天狼 说道:

    这个我已经用上了

    Thumb up 0 Thumb down 0

    [围观]

  15. 上海家具 说道:

    这东西好。看着很喜欢

    Thumb up 0 Thumb down 0

    [围观]

  16. 白大王 说道:

    本大王博客所用的这款主题就采用了此法。
    很赞

    Thumb up 0 Thumb down 0

    [围观]

  17. 七七 说道:

    呵呵,看起来不错,很想试试! :smile:

    Thumb up 0 Thumb down 0

    [围观]

  18. 右脑开发 说道:

    好处多多!

    Thumb up 0 Thumb down 0

    [围观]

  19. 早教 说道:

    看起来是个不错的东西~!

    Thumb up 0 Thumb down 0

    [围观]

  20. 厦门seo 说道:

    这个好啊 有助于用户体验

    Thumb up 0 Thumb down 0

    [围观]

  21. winw 说道:

    又要用代码,怕怕

    Thumb up 0 Thumb down 0

    [围观]

  22. 先看看 说道:

    这个很深奥

    Thumb up 0 Thumb down 0

    [围观]

  23. 张奀宁 说道:

    支持下你!帮顶了!

    Thumb up 0 Thumb down 0

    [围观]

  24. 兽血沸腾 说道:

    要学的东西还真多诶。。

    Thumb up 0 Thumb down 0

    [围观]

  25. WordPress啦 说道:

    不错哦,呵呵…… :razz:

    Thumb up 0 Thumb down 0

    [围观]

  26. zzzhu 说道:

    异步载入 还不清楚效果

    Thumb up 0 Thumb down 0

    [围观]

  27. 刘晓林 说道:

    这一点我用的少,适应基本不用了!

    Thumb up 0 Thumb down 0

    [围观]

  28. 风云春秋博客 说道:

    :evil: 说实话我真不懂!

    Thumb up 0 Thumb down 0

    [围观]

  29. 甜甜 说道:

    听介绍感觉不错,下载来看看行不行…

    Thumb up 0 Thumb down 0

    [围观]

  30. 任鸟飞 说道:

    这插件很实用,特别对于图片比较多的博客,试一下。

    Thumb up 1 Thumb down 0

    [围观]

  31. 龙凤双喜 说道:

    下载下来看看效果

    Thumb up 0 Thumb down 0

    [围观]