前天做了一个zblog模板,需要延迟加载图片,所以分享一下:
HTML图片调用方法
给图片添加lazy样式,并使用data-original来引用图片路径
js初始化lazyload并设置图片显示方式。您可以将以下段落放入模板的 footer.php 中。
参数设置
$("img.lazy").lazyload({ placeholder: "img/grey.gif", //提前用图片占位(建议使用绝对地址图片,不要相对) // 占位符,值为某个图片路径。该图像用于占据要加载的图像的位置。当图像加载时,占位符图像将被隐藏。 ============= effect: "fadeIn", // 加载时使用什么效果 //effect(特效),取值有show(直接显示)、fadeIn(淡入)、slideDown(下拉)等,常用的fadeIn ============= Threshold: 200, // 提前开始加载// 阈值,值为数字,代表页面的高度。如果设置为200,则表示滚动条距离目标位置还有200米时才开始加载图片,这样可以防止用户注意到 ============= event: 'click', // 事件触发时加载 //事件,值包括click(点击)、mouseover(鼠标悬停)、sporty(运动)、foobar(...)。可以实现鼠标不动或者点击图片开始加载。后两个值没有测试过... ============= container: $("#container"), // 对容器中的图像实现效果 // 容器,值为某个容器。默认情况下,lazyload 在拉动浏览器滚动条时生效。该参数允许您在拉动 DIV 滚动条时顺序加载 DIV 中的图像。 ============= failurelimit: 10 //当图片排序混乱时 // 失败限制,值为数字。默认情况下,当lazyload发现第一张不在可见区域的图片时,不会继续加载。然而,当HTML容器混乱时,可见区域的图像可能无法加载。 FailureLimit是指加载N张可见区域之外的图片来避免这个问题。 });
上面的方法是修改模板中已知的img标签,但是文章中发布的图片问题如何解决呢?
《zblogPHP模板修改文章内img标签内元素做jQuery.lazyload延迟加载》