美文网首页
实现图片懒加载

实现图片懒加载

作者: bit_拳倾天下 | 来源:发表于2020-11-23 10:48 被阅读0次

项目中遇到一个公示信息列表,其中有图片预览,

image

因为窗口小、列表长、图片多,加载很慢,于是想把图片做成懒加载模式。

1.在style设置了scroll的dom上绑定滚动事件

@scroll="getImages"

2.定义加载图片的方法


getImages(val) {

   const that = this;

   let bars = document.querySelectorAll(".edu-container"); //图片容器

   let count = 0

   this.data.forEach((v, k) => {

     if(!v.imageUrl){ //加载过的不用重复赋值

       let scrolledHeight = val ? val.target.scrollTop : 0 //滚动超出可视范围的高度

       let containerHeight = document.getElementById("dispalyBar").offsetHeight  //滚动容器(设置了scroll的dom)的高度

       if(bars[count] && (scrolledHeight + containerHeight) > bars[count].offsetTop){  //offsetTop是图片容器到顶端的高度

         //为图片src赋值

       }

     }

     count++

   });

 },

如下图,(scrolledHeight + containerHeight) > bars[count].offsetTop表示进入了可视范围

image

相关文章

  • 图片懒加载的原理

    懒加载思路及实现 实现懒加载有四个步骤,如下:1.加载loading图片2.判断哪些图片要加载【重点】3.隐形加载...

  • 图片懒加载

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

  • 懒加载和瀑布流

    一、简述图片懒加载的实现原理 图片懒加载 若一开始,页面上有许多的图片要加载,而如果同时加载这么多图片,会消耗性能...

  • 图片的懒加载和预加载

    懒加载:又称延迟加载,需要等到某个情况下才加载,相对可以缓解服务器压力。 实现原理:以懒加载图片为例,当加载图片较...

  • 实现图片懒加载

    项目中遇到一个公示信息列表,其中有图片预览, 因为窗口小、列表长、图片多,加载很慢,于是想把图片做成懒加载模式。 ...

  • 图片懒加载实现

    先将img标签的src链接设为同一张图片(比如空白图片),然后给img标签设置自定义属性(比如 data-src)...

  • 图片懒加载实现

    一、为什么要懒加载 有时候一个网站里面会有几百张甚至几千张上万张图片,这个时候如果所有图片一起加载的话就会导致服务...

  • jquery 回到顶部、懒加载、无限加载

    懒加载的实现思路,避免所有图片在网页加载时全部加载而影响网页性能,通过按需加载来实现 【1】图片加载前,目标位置图...

  • 无限滚动的优化方案(二):懒加载实现

    之前对预加载的实现方案做了介绍,这一篇文章主要是我对图片的懒加载的实现的一个总结。主要包括: 视区检测 图片懒加载...

  • 图片懒加载组件与应用

    实现图片只加载首屏用到的,其他的等滚动到再加载这就是图片懒加载 使用vue-lazyload插件实现 安装vue-...

网友评论

      本文标题:实现图片懒加载

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