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

图片懒加载实现原理

作者: 码农私房菜 | 来源:发表于2022-08-21 18:10 被阅读0次
图片的加载是由src 引起的,当对src 赋值时,浏览器就会请求图片资源。根据这个原理,我们使用HTML5 的data-xxx 属性来储存图片的路径,在需要加载图片的时候,data-xxx 中图片的路径赋值给src,这样就实现了图片的按需加载,即懒加载。

注意:data-xxx 中的xxx 可以自定义,这里我们使用data-src 来定义。

懒加载的实现重点在于确定用户需要加载哪张图片,在浏览器中,可视区域内的资源就是用户需要的资源。所以当图片出现在可视区域时,获取图片的真实地址并赋值给图片即可。

使用原生JavaScript 实现懒加载:

  • 知识点:
    window.innerHeight 是浏览器可视区的高度
    document.body.scrollTop
    document.documentElement.scrollTop 是浏览器滚动的过的距离
    imgs.offsetTop 是元素顶部距离文档顶部的高度(包括滚动条的距离)
    图片加载条件: img.offsetTop < window.innerHeight + document.body.scrollTop;
const images = document.querySelectorAll('img')
function lozyLoad() {
  const scrollTop = document.body.scrollTop || document.documentElement.scrollTop;
  const winHeight = window.innerHeight;
  for( let i = 0; i < images.length; i++) {
    if(images[i].offsetTop < scrollTop + winHeight) {
        images[i].src = images[i].getAttribute('data-src');
    }
  }
}
window.onscroll = loayLoad();

相关文章

  • 懒加载和瀑布流

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

  • 图片的懒加载和预加载

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

  • 图片懒加载的使用方法?

    图片懒加载 图片懒加载实现原理: 可以图片src配置一个假的地址,同事给添加一个data-url属性指向真是url...

  • 项目优化

    图片懒加载,数据懒加载, 路由懒加载 1.图片懒加载原理 1.1 开始时 不设置src属性 1.2 图片在可视区域...

  • 图片懒加载——实现原理

    一、定义 当打开一个有很多图片的页面时,先只加载页面上看到的图片,等滚动到页面下面时,再加载所需的图片。这就是图片...

  • 懒加载

    图片懒加载 实现原理 原理:先将img标签中的src链接设为同一张图片(空白图片),将其真正的图片地址存储再img...

  • 懒加载与瀑布流布局

    懒加载 一、懒加载的实现原理 由于过多的图片会严重影响网页的加载速度,并且移动网络下的流量消耗巨大,所以说延迟加载...

  • 图片懒加载和预加载

    图片懒加载的原理是什么? 首先明白为什么要懒加载: 懒加载即延迟,对于图片过多的页面,为了加快页面加载速度,我们需...

  • 2017-02-19

    图片懒加载 效果预览 瀑布流布局 效果预览 木桶布局 效果预览 无限轮播 效果预览 原理 图片懒加载的原理当网页上...

  • 懒加载和瀑布流布局

    简述图片懒加载的实现原理 原理:先将img标签中的src链接设为同一张图片(空白图片),将其真正的图片地址存储再i...

网友评论

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

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