dmz社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 134|回复: 0

[前端] 前端实现图片懒加载

[复制链接]
  • TA的每日心情
    奋斗
    2023-9-9 08:05
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    358

    主题

    374

    帖子

    1641

    积分

    荣誉会员

    积分
    1641

    发表于 2023-9-18 17:00:04 | 显示全部楼层 |阅读模式

    本站资源全部免费,回复即可查看下载地址!

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    图片懒加载是一种优化网页性能的技术,它延迟加载页面中的图片,只有当图片进入可见区域时才加载。

    以下是实现图片懒加载的基本步骤:

    1. 在 HTML 中给所有需要懒加载的图片添加一个占位符,可以是一张简单的小图片,或者是一个透明的 DIV 元素。
    [AppleScript] 纯文本查看 复制代码
    <im g src="placeholder.jpg" data-src="image.jpg" alt="Lazy-loaded image">
    


    2. 使用 JavaScript 监听滚动事件或其他触发条件(如页面加载完成),并判断图片是否进入可见区域。
    [JavaScript] 纯文本查看 复制代码
    window.addEventListener('scroll', function() {
      var lazyImages = document.querySelectorAll('img[data-src]');
      
      for (var i = 0; i < lazyImages.length; i++) {
        if (isInViewport(lazyImages[i])) {
          lazyImages[i].src = lazyImages[i].getAttribute('data-src');
          lazyImages[i].removeAttribute('data-src');
        }
      }
    });
    
    function isInViewport(element) {
      var rect = element.getBoundingClientRect();
      
      return (
        rect.top >= 0 &&
        rect.left >= 0 &&
        rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
        rect.right <= (window.innerWidth || document.documentElement.clientWidth)
      );
    }
    


    3. 当图片进入可见区域后,将 `data-src` 属性的值赋给 `src` 属性,以此来加载真实的图片资源。

    这样就实现了图片懒加载。通过延迟加载图片,可以减少页面的加载时间,提高用户体验。需要注意的是,为了确保懒加载正常工作,建议在页面加载完成后才执行懒加载脚本。

    温馨提示:
    1、本站所有内容均为互联网收集或网友分享或网络购买,本站不破解、不翻录任何视频!
    2、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意!
    3、本站资源仅供本站会员学习参考,不得传播及用于其他用途,学习完后请在24小时内自行删除.
    4、本站资源质量虽均经精心审查,但也难保万无一失,若发现资源有问题影响学习请一定及时点此进行问题反馈,我们会第一时间改正!
    5、若发现链接失效了请联系管理员,管理员会在2小时内修复
    6、如果有任何疑问,请加客服QQ:1300822626 2小时内回复你!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|小黑屋|本站代理|dmz社区

    GMT+8, 2024-4-29 11:18 , Processed in 0.094243 second(s), 29 queries .

    Powered by Discuz! X3.4 Licensed

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表