美文网首页前端技术
Web图片懒加载组件—Lazyload

Web图片懒加载组件—Lazyload

作者: 单炒饭 | 来源:发表于2018-03-10 10:16 被阅读13次

在Web项目中,大量的图片应用会导致页面加载时间过长,浪费不必要的带宽成本,还会影响用户浏览体验。

Lazyload 是一个文件大小仅4kb的图片懒加载组件(不依赖其它第三方库),组件会根据用户当前浏览的区域去自动加载对应的图片(用户还没有浏览的区域图片则不会进行加载)。

Lazyload 允许图片加载之前,指定一张相对较小的封面图。组件会优先加载封面图片,以优化用户浏览感受。当原图加载完成之后则会覆盖封面图片。

除此之外,Lazyload 还能获取到当前图片的加载进度。

效果示例

如何使用?

2.1 Html

  • html set the data-src property.
  • data-cover is not necessary
<img class="img" data-src="http://xxx/img1.jpg" data-cover="http://xxx/img1-cover.jpg">
<img class="img" data-src="http://xxx/img2.jpg" data-cover="http://xxx/img2-cover.jpg">
<img class="img" data-src="http://xxx/img3.jpg" data-cover="http://xxx/img3-cover.jpg">
 
<div class="imgBg" data-src="http://xxx/img4.jpg" data-cover="http://xxx/img4-cover.jpg"></div>
<div class="imgBg" data-src="http://xxx/img5.jpg" data-cover="http://xxx/img5-cover.jpg"></div>
<div class="imgBg" data-src="http://xxx/img6.jpg" data-cover="http://xxx/img6-cover.jpg"></div>

2.2 Import ./dist/Lazyload.js file to the page

<script src="http://xxx/dist/Lazyload.js"></script>

or

let Lazyload = require('./dist/Lazyload.js');

2.3 Initialization

//Get elements
var eList = [];
eList.push.apply(eList, document.getElementsByClassName('img'));
eList.push.apply(eList, document.getElementsByClassName('imgBg'));

//Create Lazy
var lazy = new Lazyload({
    obj:eList,          //elements
    range:200           //Extra range
});

// //custom tips
// lazy.tips = function(obj){
//     var e = obj.o,                    //element
//         schedule = obj.schedule;      //load schedule
//     console.log(e,schedule);
// };

//Init
lazy.init();

Demo

相关文章

  • Web图片懒加载组件—Lazyload

    在Web项目中,大量的图片应用会导致页面加载时间过长,浪费不必要的带宽成本,还会影响用户浏览体验。 Lazyloa...

  • vue-cli 插件 vue-lazyload 图片懒加载

    vue-lazyload 图片懒加载 解决

  • lazyload 图片懒加载

    图片懒加载,支持动态新增图片 步骤一 修改需要懒加载的图片的属性,增加一个名称为lazyload的class 步骤...

  • Vue-lazyload 的使用

    Vue 项目使用 Vue-lazyload 做图片懒加载。 下载 下载 Vue-lazyload 的包NPM包 引...

  • 图片懒加载

    前端实现图片懒加载(lazyload)的两种方式 原生JS实现最简单的图片懒加载 30行Javascript代码实...

  • vue-lazyload图片错误替换

    vue图片懒加载,vue-lazyload官方错误图片处理:1、用图片来替换加载过程或者加载失败: 2、引入时设置...

  • 图片懒加载 lazyLoad

    图片懒加载 图片的延迟加载最常见的是只加载网页显示在屏幕中的图片,如果用户没有滚动到网页靠下的部分,那图片就不用显...

  • 相关插件

    axios vue-router vuex vue-lazyload 图片懒加载 element-ui 按需加载 ...

  • 懒加载和预加载

    懒加载 js懒加载 意义 懒加载(LazyLoad)是前端优化的一种有效方式,能极大的提升用户体验,图片加载是其重...

  • Vue-lazyload 的使用

    Vue 项目使用 Vue-lazyload 做图片懒加载。 下载 下载 Vue-lazyload 的包NPM包[h...

网友评论

    本文标题:Web图片懒加载组件—Lazyload

    本文链接:https://www.haomeiwen.com/subject/ntuvfftx.html