js实现图片懒加载

原生js实现图片懒加载需要的条件
1、scroll事件
2、元素是否处于可视区域

当scroll事件触发的时候,根据计算,判断元素是否在可视区域,我们可以通过两种方式计算
第一种方式,也是比较简单的方式
1、使用原生API --- getBoundingClientRect.top 获取元素顶部距可视区顶部的高度top
2、使用 window.clientHeight 获取可视区的高度viewHeight
公式 top < viewHeight 的时候,说明该元素处于可视区了,这时候就可以给img标签添加src属性

第二种方式
1、元素顶部到父元素顶部的距离 --- offsetTop a
2、父元素顶部到可视区顶部的距离 --- scrollTop b
3、可视区的高度 --- clientHeight c
当 a - b < c,说明该元素处于可视区,给img标签添加src属性

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 有时候一个网页会包含很多的图片,例如淘宝京东这些购物网站,商品图片多只之又多,页面图片多,加载的图片就多。服务器压...
    藏清风阅读 1,891评论 0 0
  • 1、什么是懒加载? 懒加载就是延迟加载的意思,比如我们加载一个页面,这个页面很长很长,长到我们的浏览器可视区域装不...
    前端_Fn阅读 3,798评论 0 0
  • 一、懒加载 懒加载也叫延迟加载,Js中图片的延迟加载,延迟图片需要符合某些条件时才加载;对于图片过多的页面,为了加...
    一只章鱼哥阅读 4,086评论 0 1
  • 一、图片懒加载原理 浏览器是否发起请求图片是根据 中src的属性,所以实现原理就是在图片没有进入可视区域的时候将图...
    冰雪_666阅读 1,488评论 0 3
  • 懒加载 什么是懒加载 懒加载其实就是延迟加载,是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区...
    grain先森阅读 7,419评论 0 79