实现思路:img的src默认是loading图片,当图片的高度<视口高度+滚动高度时,替换img的src
<!-- 第一张图片是loading图片,data中的是要加载的图片 --><img src="./img/loading.gif" data-src="./img/1.jpg" alt=""><img src="./img/loading.gif" data-src="./img/2.jpg" alt=""><img src="./img/loading.gif" data-src="./img/3.jpg" alt=""><img src="./img/loading.gif" data-src="./img/4.jpg" alt=""><img src="./img/loading.gif" data-src="./img/5.jpg" alt=""><img src="./img/loading.gif" data-src="./img/6.jpg" alt=""><script>// 获取所有图片const imgList = document.getElementsByTagName('img')// 获取视口的高度let ch = document.documentElement.clientHeightlet len = imgList.length// 定义懒加载函数const imgLazy = function (event) {for (let i = 0; i < len; i++) {// 判断图片高度是否等于视口高度与滚动高度的和if (imgList[i].offsetTop < document.documentElement.scrollTop + ch) {// 改变图片的srcimgList[i].src = imgList[i].dataset.src}}}// 监听滚动事件与onload事件window.onscroll = imgLazywindow.onload = imgLazy</script>
