当前位置:首页 > jquery

jquery懒加载

2026-03-16 16:12:37jquery

jQuery 懒加载的实现方法

懒加载(Lazy Load)是一种优化网页性能的技术,延迟加载非关键资源(如图片),直到用户滚动到它们附近时才加载。jQuery 可以简化懒加载的实现。

基础实现方式

使用 jQuery 实现懒加载的核心逻辑是通过监听滚动事件,检查元素是否进入可视区域,再动态加载资源。

$(document).ready(function() {
  // 选择所有需要懒加载的元素,例如带有 data-src 属性的图片
  $("img[data-src]").each(function() {
    // 初始时将真实的 src 存储在 data-src,用占位图或空代替
    $(this).attr("src", "placeholder.jpg");
  });

  // 监听滚动事件
  $(window).scroll(function() {
    $("img[data-src]").each(function() {
      if (isElementInViewport($(this))) {
        // 当元素进入视口时,加载真实的图片
        $(this).attr("src", $(this).data("src"));
        $(this).removeAttr("data-src"); // 移除 data-src 避免重复加载
      }
    });
  });
});

// 检查元素是否在视口中
function isElementInViewport(el) {
  var rect = el[0].getBoundingClientRect();
  return (
    rect.top <= (window.innerHeight || document.documentElement.clientHeight) &&
    rect.left <= (window.innerWidth || document.documentElement.clientWidth) &&
    rect.bottom >= 0 &&
    rect.right >= 0
  );
}

使用现成的 jQuery 插件

如果需要更完整的解决方案,可以使用专门的 jQuery 懒加载插件,如 jquery.lazyload

  1. 引入插件文件:

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.lazyload/1.9.1/jquery.lazyload.min.js"></script>
  2. 初始化插件:

    $(document).ready(function() {
    $("img.lazy").lazyload({
     effect: "fadeIn", // 加载时的动画效果
     threshold: 200 // 提前多少像素开始加载
    });
    });
  3. HTML 结构:

    jquery懒加载

    <img class="lazy" data-original="image.jpg" width="600" height="400">

性能优化建议

  • 对滚动事件进行防抖(debounce)处理,避免频繁触发检查。
  • 初始加载时立即检查一次视口内的元素,避免用户需要滚动才能触发加载。
  • 对于大量元素,考虑使用 Intersection Observer API(现代浏览器支持),比滚动事件更高效。

注意事项

  • 确保懒加载内容在 JavaScript 禁用时仍有合理的回退方案。
  • 图片应设置明确的宽度和高度,避免布局偏移。
  • 考虑使用低质量图像占位符(LQIP)或模糊缩略图技术提升用户体验。

标签: 加载jquery
分享给朋友:

相关文章

jquery 之家

jquery 之家

jQuery 之家是一个专注于 jQuery 相关资源的中文网站,提供插件、教程、代码示例等内容。以下是相关信息整理: jQuery 之家网站内容 该网站通常包含以下资源: jQuery…

jquery版本

jquery版本

jQuery 的版本历史及当前状态如下: 当前稳定版本 jQuery 的最新稳定版本是 3.6.4(发布于 2023 年 3 月),支持现代浏览器并修复了部分安全问题。 主要版本分支…

jquery div

jquery div

jQuery 操作 div 元素 jQuery 提供了多种方法来操作 div 元素,包括选择、修改内容、样式调整、事件绑定等。以下是常见操作的示例: 选择 div 元素 通过 ID 选择 div:…

jquery 对象

jquery 对象

jQuery 对象简介 jQuery 对象是通过 jQuery 选择器或方法创建的封装了 DOM 元素的集合。它是一个类数组对象,包含一组 DOM 元素并提供 jQuery 特有的方法链式操作。 创…

jquery文件

jquery文件

jQuery文件获取与使用 jQuery是一个快速、简洁的JavaScript库,简化了HTML文档遍历、事件处理、动画和Ajax交互。以下是获取和使用jQuery文件的方法。 下载jQuery文件…

jquery 选择器

jquery 选择器

jQuery 选择器基础语法 jQuery 选择器基于 CSS 选择器语法扩展,用于快速定位 DOM 元素。基本结构为 $("selector") 或 jQuery("selector"),返回一个包…