至尊技术网 - 图片懒加载
https://www.zzwws.cn/tag/%E5%9B%BE%E7%89%87%E6%87%92%E5%8A%A0%E8%BD%BD/
-
Typecho实现图片懒加载(lazyload)
https://www.zzwws.cn/archives/1128/
2019-09-18T13:33:00+08:00
基于 jQuery 的图片延迟加载插件,在用户滚动页面到图片之后才进行加载。对于有较多的图片的网页,使用图片延迟加载,能有效的提高页面加载速度。注意事项:需要真正实现图片延迟加载,必须将真实图片地址写在 data-original 属性中。若 src 与 data-original 相同,则只是一个特效而已,并不达到延迟加载的功能。1、修改 HTML 代码中需要延迟加载的 img 标签<img class="lazy" src="img/loading.gif" data-original="example.jpg">
// 或者
<img class="lazy" data-original="example.jpg">
Typecho在主题文件 index.php 找到:<img src="<?php echo articleThumb($this);?>" alt="<?php $this->title(); ?>">
替换:<img class="lazy" src="<?php $this->options->themeUrl('images/loading.gif'); ?>" data-original="<?php echo articleThumb($this);?>" alt="<?php $this->title(); ?>">
2、在主题文件 footer.php 的 标签前添加如下代码:这里主要是引入jquery.js和jquery.lazyload.js,并初始化lazyload的图片显示样式。注意:因主题自带jquery.js,故这里未做引入!占位符图片请替换为你的gif图片地址。<!--引入jquery.lazyload.js-->
<script src="https://cdn.bootcss.com/jquery_lazyload/1.9.7/jquery.lazyload.min.js"></script>
<script>
//js出始化lazyload并设置图片显示方式
$(function() {$("img.lazy").lazyload({effect: "fadeIn", threshold: 200});});
//pjax开启后的pjax回调
$(document).on('pjax:complete', function() {
$("img.lazy").lazyload({
effect: "fadeIn",
threshold: 200
});
});
</script>