所有分类
  • 所有分类
  • 后端开发

JS图片懒加载:省带宽、速度更快,怎么做?

听说你想知道JS图片懒加载有哪些好处和怎么做?那就对了!今天我就给你说清楚,肯定让你觉得学到好多!别不信,你瞧着!

首先,大家要搞清楚为啥要用图片懒加载,其实这事儿挺玄的!别慌,听我慢慢给你解释。这个功能可是能让用户用得更顺手!是不是觉得特别神奇?想象下,要是网页里全都是图,用户还没翻到那里,那不就是浪费掉资源了吗?于是,懒加载就能等到必要时才加载图片,省下了带宽和等待时间。这么做的话,用户看网页的速度就快多,使用起来当然更舒服!

你可能好奇,怎么实现图片延迟加载?别急,让我给你详细解释下。首先,或许你已经注意到了,HTML文件中的图片src被换成了同一图片或者干脆空白。接着,咱们可以在img标签上添加一个叫做data-src的个性属性,这可是用来存储实际图片地址的。只要图片还没闪现出来,你看到的就是一片空白或同一幅画面。这样就能避免发送HTTP请求。但当你的眼睛捕捉到图片的位置后,再将data-src的地址传递给src,这个时候HTTP请求将会发送。这不是特别直观吗?

还没完!其实这里面还有很多有意思的内容,快来听听看。其实,有个问题就得问问!那么为啥子要先判断图片进不进去可见范围内?这才是重点!想象要是用户都还没有滚到图片那儿去,加载它干嘛?所以咱们得搞个大招,就是先看看图片在不在用户视野里。只有当他们真的看见了,才能加载起来。这么一来,既省下了资源,又让用户觉得更舒服,棒?

停住别跑!这儿有更多干货!首先说说HTML部分。要么就让所有图像的src都指向那张图片,要么索性都别设。接着,给img标签加个data-src这东西,存真正的图片网址进去。懂啦?放心,没想到你还挺机灵滴!

JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做? JS图片懒加载:省带宽、速度更快,怎么做?

下面到JS!搞个函数看下图片有木有进屏。只有用户真正能看见它们时才能加载,这可重要着!记住别漏了给滚动事件绑定这个函数不然就没用了!记得仔细点!

好,这时候你应该感觉对JS图片懒加载这个东西更加了解!这个功能可以让你的用户体验更好,同时还能节约网站资源,加快网页加载。这不是很好吗?所以,如果你想要把你的网页做得更有格调、更高级点,那么赶快去学用图片懒加载!我保证,你一定会收获很多好处的!今天的分享就先这样!希望我的文章能够帮到大家!如果有啥疑问或建议的话,别忘了在下方留言跟我互动!当然了,欢迎您点赞并分享给其他朋友,让更多人享受到图片懒加载带来的便利!再见咯!

window.onload = () => {
   // 获取某节点与浏览器顶部的距离
   function getTop(e) {
    if (!e) return
    return e.offsetTop
   }
   let imgs = document.getElementsByTagName('img')
   function lazyLoading(imgs) {
    // 可是区域高度
    let innerHeight = window.innerHeight;
    // 滚动区域高度
    let scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
    for (let i = 0; i  getTop(imgs[i])) {
      imgs[i].src = imgs[i].getAttribute('data-src')
     }
    }
   }
   lazyLoading(imgs)
   window.onscroll = () => {
    lazyLoading(imgs)
   }
  }

原文链接:https://www.icz.com/technicalinformation/web/html5/2024/03/11297.html,转载请注明出处~~~
0

评论0

请先
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?