原生js实现图片懒加载

1.图片懒加载能够提升网页的加载速度,进而提升了系统的性能
具体代码如下

<body>
<img src="./images/loading.gif" data-src="./images/Sticker01.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker02.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker03.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker04.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker05.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker06.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker01.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker02.png" alt="">
<img src="./images/loading.gif" data-src="./images/Sticker03.png" alt="">
<script>
let num = document.getElementsByTagName("img").length
let imgs = document.getElementsByTagName("img")
// console.log(num);
// console.log(imgs);
lazyload()
// 窗口滚动时,重新调用懒加载方法
window.onscroll = lazyload
function lazyload(){
// 视口高度
let seeHeight = document.documentElement.clientHeight;//可见区域高度
// 滚动条距离视口顶部的高度
let scrollTop = document.documentElement.scrollTop || document.body.scrollTop
for(let i=0; i< imgs.length;i++){
// 判断当前的图片是否位于可视窗口范围内
if(imgs[i].offsetTop < seeHeight + scrollTop){
// 如果当前图片为默认的加载图片,则替换相应的图片
if(imgs[i].getAttribute("src") == "./images/loading.gif"){
imgs[i].src = imgs[i].getAttribute("data-src")
}
}
}
}
</script>
</body>
posted @   胡同树下  阅读(125)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示