周天记
Typecho实现全站图片懒加载

对于博客网站来说,图片加载慢是导致网站迟迟加载不完的罪魁祸首,本站实现了所有图片懒加载,这里分享下本站是如何实现的,整体过程也比较简单。本站教程基于Typecho,其它博客程序请自行研究,不过区别并不大。

我这里使用的 lazysizes.min.js 来实现懒加载。有必要简单介绍下LazySizes

LazySizes简介

LazySizes是一款终极而轻量级的懒加载库,专门用于处理响应式图片、iframe以及脚本等资源的延迟加载。其核心特性包括:

  • 高性能:旨在提供极高的性能表现。
  • 易于集成:只需在你的网页中加入JS文件,并对需懒加载的元素添加lazyload类即可。
  • 自适应图片:全面支持响应式图片标准,如标签和srcset属性。

主要功能亮点

  • 自动优先级资源管理,区别对待关键和临近视口的元素,提高感知性能。
  • 兼容性广泛,适用于各种前端框架和动态页面技术。
  • 支持未来的响应式图片规范,无需额外配置。
  • 提升SEO,不会影响搜索引擎抓取。

引入LazySizes

github下载地址

其它安装方式

npm install lazysizes --save
yarn add lazysizes --save

使用

使用上也比较简单,在需要使用的类上添加 lazyload 即可,比如我这里

<img class="comment-list-empty-img lazyload" 
     src="<?php $this->options->themeUrl('/static/images/null.svg'); ?>"
     data-src="<?php $this->options->themeUrl('/static/images/null.svg'); ?>"
     alt="<?php echo _t('暂无评论数据'); ?>"
>
😊
提交评论

评论区

共 57 条评论

  1. 头像
    懒加载效果确实流畅很多
    2025年09月08日 吉林 Windows 10 / Google Chrome
    1. 头像
      满心 博主
      @不朽的凡人 是啊,毕竟也是小水管机
      2025年09月08日 湖北 Windows 10 / Google Chrome
  2. 头像
    酷小呵 Lv2
    懒加载js的cdn,一般是放网站头部还是底部呀
    2025年08月01日 北京 Android 13 / Google Chrome
    1. 头像
      满心 博主
      @酷小呵 放头部
      2025年08月01日 湖北 Windows 10 / Google Chrome
      1. 头像
        酷小呵 Lv2
        @满心 嗯,好的 谢谢
        2025年08月01日 北京 Android 13 / Google Chrome
  3. 头像
    还是得整个带宽大的。
    2025年06月13日 河南 Windows 11 / Microsoft Edge
    1. 头像
      满心 博主
      @网友小宋 太贵啦
      2025年06月13日 湖北 Windows 10 / Google Chrome
  4. 头像
    zeruns Lv2
    懒加载确实不错,我用的主题本身支持
    2025年06月12日 广东 Windows 11 / Google Chrome
    1. 头像
      满心 博主
      @zeruns 提升加载效率还是蛮不错的
      2025年06月12日 湖北 Android 15 / 手机微信
  5. 头像
    绪风 Lv1
    还有一种方法,现在浏览器原生支持图片懒加载了,图片标签上添加 loading="lazy" 就可以
    2025年06月12日 广东 Windows 10 / Google Chrome
    1. 头像
      @绪风 学习了 mark
      2025年06月13日 重庆 Windows 10 / Google Chrome
    2. 头像
      满心 博主
      @绪风 是的,其它小伙伴也说了这种,不过我还没试过
      2025年06月12日 湖北 Windows 10 / Google Chrome
  6. 头像
    我一直以为你这个是wp,这个模板我见过类似的。
    2025年06月11日 河南 GNU/Linux / Google Chrome
    1. 头像
      满心 博主
      @似水流年 你说的应该是莫比乌斯的,他是WP的,我参照他的魔改了tp的
      2025年06月11日 湖北 Windows 10 / Google Chrome
      1. 头像
        @满心 他的有些文章我读得有点吃力,跟不上。
        你俩都是勤更新的博主。
        2025年06月11日 河南 GNU/Linux / Google Chrome
        1. 头像
          满心 博主
          @似水流年 我比较随和,平时有时间有想法,就会多写写,没啥时间,也会隔很久的
          2025年06月11日 湖北 Windows 10 / Google Chrome
  7. 头像
    这个可以呀还可以节省服务器宽带!
    2025年06月10日 江苏 Windows 10 / Google Chrome
    1. 头像
      满心 博主
      @文案姐笔记 是呀,网站速度很关键呀
      2025年06月10日 湖北 Android 15 / 手机微信
  8. 头像
    刘郎 Lv5
    我直接原图上传 😳 但上传后服务器会自动压缩一点 咦 我发现个问题 现在这个页面对移动端不太友好了 视面左右晃动挺严重的
    2025年06月10日 贵州 GNU/Linux / Google Chrome
    1. 头像
      满心 博主
      @刘郎 有空的话,再帮忙看下,页面还晃动不,我自己测好像正常了
      2025年06月10日 湖北 Windows 10 / Google Chrome
      1. 头像
        刘郎 Lv5
        @满心 不晃了
        2025年06月10日 贵州 GNU/Linux / Google Chrome
        1. 头像
          满心 博主
          @刘郎 好滴,感谢感谢
          2025年06月10日 湖北 Windows 10 / Google Chrome
    2. 头像
      满心 博主
      @刘郎 我刚试了下,好像是的,我看看啥情况
      2025年06月10日 湖北 Android 15 / WebView
  9. 头像
    大峰 Lv3
    这个是高级货。应该收藏。我的图片都是压缩小了再上传。。
    2025年06月09日 江苏 Windows 10 / Firefox
    1. 头像
      森木志 Lv1
      @大峰 你可以尝试上传处理成webp,就不用这么繁琐了
      2025年06月11日 美国 Windows 10 / Google Chrome
    2. 头像
      满心 博主
      @大峰 我的图片比较少,就没压缩,一般不超过200KB
      2025年06月09日 湖北 Windows 10 / Google Chrome
  10. 头像
    ymz316 Lv4
    有这种成品还是需要果断收藏的
    2025年06月09日 湖南 GNU/Linux / Firefox
    1. 头像
      满心 博主
      @ymz316 以后肯定用得上的
      2025年06月09日 湖北 Windows 10 / Google Chrome