图片懒加载使用方法及感受

对前端而言,提高网页的加载速度非常重要。众所周知,图片是最吃流量的。我们都知道的优化技巧是页面加载时只加载首屏页面用到的图片即可,其他的图片资源可以稍后再加载。有一款jquery的lazyload插件便是一个可以实现图片延迟加载的插件,在用户触发某个条件之后再加载对应的图片资源,这对网站的打开速度有很大提升。

插件的使用方法很简单(依赖jquery):引入lazyload.js(压缩版才4KB)
对我们想要延迟加载的图片添加lazy样式,用”data-original” 替换图片的引用路径

<!-- 对img标签使用 -->
<img class="lazy" data-original="img/example.jpg">
<!-- 延迟加载元素的背景图 -->
<div class="lazy" data-original="img/bg.jpg">
    ...
</div>

在JS文件中调用lazyload()方法,具体例子如下。

$().ready(function(){
    //可任意选择你想延迟加载的目标元素,例如直接使用样式名lazy作为选择条件
    $("img .lazy").lazyload({
         placeholder : "img/grey.gif", //占位图
         effect: "fadeIn", // 加载效果
         threshold: 200, // 提前加载
         event: 'click',  // trigger
         container: $("#container"),  //指定容器
         failurelimit : 5 // 发生混乱时的hack手段
    })
})

参数的具体说明如下:

参数作用说明
placeholder占位图片图片路径值,图片加载时占位图自动隐藏
effect图片载入时动画效果值有show(直接显示),fadeIn(淡入),slideDown(滑入)等jq常用效果
threshold提前开始加载高度数字值,是离需要加载目标的高度.如设置为200,表示滚动条在离目标位置还有200的高度时就开始加载图片,避免用户看到图片加载过程
event图片加载trigger值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…)
container指定容器lazyload默认在滚动浏览器滚动条时生效,这个参数可以让你在滚动某DIV的滚动条时执行懒加载
failurelimit提高稳定性若是某一张该被加载的图片未能正确加载,则加载其后的第N张图

好了,lazyload就说到这里,这里是演示地址。是我司官网下面的一个小网页,为了各位能看到延迟加载的实际效果,暂时没做提前加载的优化,延迟加载效果还是很明显的,抓紧时间看吧,说不定过几天网站就又改版了。(或者我被扣工资了!)这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值