jquery实现加载进度条提示效果

yizhihongxing

下面是jQuery实现加载进度条提示效果的完整攻略:

1. 引入jQuery和进度条插件

在标签中引入jQuery和进度条插件,比如nprogress

<head>
  <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/nprogress/0.2.0/nprogress.min.css" />
  <script src="https://cdn.bootcdn.net/ajax/libs/nprogress/0.2.0/nprogress.min.js"></script>
</head>

2. 定义进度条开始和结束的函数

在javascript中定义进度条开始和结束的函数:

function startProgress() {
  NProgress.start();
}
function endProgress() {
  NProgress.done();
}

可以在页面中手动调用startProgress()endProgress()函数来启动或停止进度条。

3. 监听ajax请求

监听页面中的ajax请求,在请求开始时启动进度条,在请求结束时停止进度条:

$(document).on({
  ajaxStart: function() { startProgress(); },
  ajaxStop: function() { endProgress(); }
});

以上方式可以监听整个页面上所有的ajax请求。如果需要监听特定的请求,可以对该请求进行单独设置进度条。

示例1

下面是一个示例,监听一个按钮的点击事件,加载另一个页面并展示进度条:

<button id="load-page">Load another page</button>
<div id="content"></div>

<script>
$('#load-page').click(function() {
  startProgress();  // 开始进度条
  $.get('another-page.html', function(data) {
    $('#content').html(data);
    endProgress();   // 结束进度条
  });
});
</script>

在点击按钮后,会异步加载another-page.html页面,并在加载完成后展示到#content元素上。

示例2

下面是一个示例,实现图片懒加载并显示进度条:

<img id="img" src="placeholder.jpg" data-src="real-image.jpg">

<script>
$(window).scroll(function() {
  var img = $('#img');
  if ($(window).scrollTop() + $(window).height() > img.offset().top) {
    startProgress();  // 开始进度条
    img.attr('src', img.data('src')).load(function() {
      endProgress();   // 结束进度条
    });
  }
});
</script>

在页面滚动到图片位置时,图片才开始加载,加载时展示进度条,加载完成后停止进度条。通过将真实图片的地址存储在data-src属性中,使得占位图片placeholder.jpg能够提前加载,加速页面加载速度。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jquery实现加载进度条提示效果 - Python技术站

(0)
上一篇 2023年6月25日
下一篇 2023年6月25日

相关文章

  • JAVA基础之注解与反射的使用方法和场景

    JAVA基础之注解与反射的使用方法和场景 1. 注解(Annotation)的概述 注解是一种用于为程序元素(类、方法、字段等)添加元数据的方式。它们提供了一种在代码中添加补充信息的简洁且灵活的方式。在Java中,注解以@符号开头,可以用于提供编译时的信息、运行时的行为以及生成文档等。 2. 注解的使用方法 2.1 定义注解 在Java中,我们可以使用@in…

    other 2023年8月6日
    00
  • 怎么查找对方ip,教你如何通过qq查找ip教程

    怎么查找对方IP – 教你如何通过QQ查找IP教程 简介 在互联网上,我们有时候需要查找对方的IP地址,以了解对方的位置或者进行网络安全分析。本教程将详细介绍如何通过QQ查找对方的IP地址。 步骤 步骤一:准备工作 在开始之前,你需要准备以下工具和信息:- 一台电脑或者手机- 安装有QQ的设备- 对方的QQ号码 步骤二:登录QQ 打开QQ应用或者访问QQ官方…

    other 2023年7月31日
    00
  • 【Unity】3.1 利用内置的3D对象创建三维模型

    【Unity】3.1 利用内置的3D对象创建三维模型 在 Unity 中,可以使用内置的 3D 对象快速创建三维模型,而无需手工建模的复杂过程。本文将介绍如何使用内置的 3D 对象来创建一个简单的场景。 1. 打开 Unity 并创建一个新的场景 首先,打开 Unity,并创建一个新的场景。 2. 创建一个地面 在创建一个地面之前,可以先到“GameObje…

    其他 2023年3月28日
    00
  • Vue常见报错以及解决方案实例总结

    下面为您详细讲解“Vue常见报错以及解决方案实例总结”的攻略。 Vue常见报错以及解决方案实例总结 1. 数据绑定相关报错 1.1 TypeError: Cannot read property ‘xxx’ of undefined 这个报错通常是由于组件数据没有初始化导致,可以查看组件中的data属性是否正确初始化。例如下面的代码: <templat…

    other 2023年6月26日
    00
  • C++异步操作future和aysnc与function和bind

    C++中,异步操作future和async与function和bind是实现多线程编程和提高程序性能非常常用且重要的功能。下面我将为大家详细讲解它们的使用攻略。 异步操作future和async 在进行耗时的操作时,我们通常希望使用异步操作来避免主线程阻塞。C++11及之后的版本中,提供了future和async类来实现异步操作。 future类 futur…

    other 2023年6月27日
    00
  • js数组方法扩展实现数组统计函数

    JS数组方法扩展实现数组统计函数的攻略如下: 什么是数组统计函数 数组统计函数可以用来对数组进行一些常见的统计操作,例如求和、求平均数、最大值、最小值等等。JS原生的数组方法(如forEach、map、filter、reduce等)可以完成部分数组统计操作,但并不能满足所有需求。因此,我们需要自行实现一些常见的数组统计函数来满足特定的需求。 如何扩展数组方法…

    other 2023年6月25日
    00
  • golang菜鸟教程

    Golang菜鸟教程完整攻略 什么是Golang菜鸟教程? Golang菜鸟教程是一份面向初学者的Golang教程,它涵盖了Golang的基础识、语法、数据类型、函数、结构体、接口、并发编程等方面的内容。该教程以简单易懂的方式介绍了Golang的各种概念和特性,适合初学者快速入门。 Golang菜鸟教程的完整攻略 以下是使用Golang菜鸟教程的完整攻略: …

    other 2023年5月6日
    00
  • Android App开发中ViewPager组件的入门使用教程

    Android App开发中ViewPager组件的入门使用教程 ViewPager是Android开发中常用的组件之一,它可以实现左右滑动切换不同的页面。下面是一个详细的入门使用教程,包含两个示例说明。 步骤一:添加ViewPager到布局文件 首先,在你的布局文件中添加ViewPager组件。例如,你可以在XML文件中添加以下代码: <androi…

    other 2023年9月7日
    00
合作推广
合作推广
分享本页
返回顶部