zoukankan      html  css  js  c++  java
  • 原生js实现图片懒加载

    image

    js:

        let view = document.documentElement.clientHeight;//获取浏览器窗口可视区的高度
        function fn1(){
            setTimeout(function lazyload() {    //添加一个定时器一秒钟后开始执行
            let imgs = document.querySelectorAll('img');    // 获取所有img标签
            // console.log(imgs);
            for (let item of imgs) {                // 使用for-of遍历所有图片
                // 显示图片出现在浏览器的位置
                let rect = item.getBoundingClientRect();    // 找到每一个图片在可视区上的位置
                console.log(rect);
                if (rect.bottom >= 0 && rect.top < view) {    //给个if语句如果图片的底部大于0并且小于这个浏览器的可视区域 ,就执行以下操作
                    item.src = item.getAttribute('data-original')    // 获取data-original的路径传给img
                }
            }
        },1000)
        }
        fn1();
        document.addEventListener('scroll',fn1)    //当滚动事件发生时就开始执行fn1函数里的任务
    

    image
    image

  • 相关阅读:
    es6学习笔记
    vue.js项目目录结构说明
    js 数组操作总结
    js 数组去重方法
    HTTP协议三次握手过程
    MVC与MVVM模式对比
    谱面编辑器
    LL谱面分析和难度标定
    SLP的模块结构
    LL基本姿势
  • 原文地址:https://www.cnblogs.com/huayang1995/p/15604410.html
Copyright © 2011-2022 走看看