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

下面是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日

相关文章

  • 【WPF】无边框窗体

    WPF无边框窗体的完整攻略 WPF无边框窗体是一种常见的UI设计,它可以让应用程序看起来更加现代化和美观。在本文中,我们将为您提供一份详细的WPF无边框窗体的完整攻略,包括无边框窗体的基本概念、使用场景、实现方法和两个示例说明。 无边框窗体的基本概念 无边框窗体是一种特殊的WPF窗体,它没有标准的标题栏、边框和按钮。无边框窗体通常用于以下场景: 需要自定义窗…

    other 2023年5月5日
    00
  • MS SQL 实现验证字符串是否包含有大小写字母的功能

    Sure! 下面是一个使用MS SQL实现验证字符串是否包含大小写字母的功能的攻略: 使用内置函数:可以使用MS SQL的内置函数来实现验证字符串是否包含大小写字母的功能。具体步骤如下: 使用PATINDEX函数来查找字符串中是否存在大写字母和小写字母的模式。PATINDEX函数返回模式在字符串中的起始位置,如果找不到模式,则返回0。 使用UPPER函数将字…

    other 2023年8月17日
    00
  • JavaScript中进制之间的转换

    JavaScript 中进制之间的转换 在JavaScript的开发中,我们经常需要进行进制之间的转换,例如将一个十六进制数转化为整型数,或者将一个十进制数转化为二进制字符串。本文将介绍在JavaScript中如何进行进制之间的转换。 二进制转其他进制 二进制转十进制 将一个二进制数转化为十进制数,可以使用parseInt函数,具体实现如下: const b…

    其他 2023年3月28日
    00
  • OPPO R17Pro手机怎么升级和降级系统?

    OPPO R17Pro手机升级系统 OPPO R17Pro手机的系统升级需要在设置中进行,下面是操作步骤: 1.进入“设置”应用,向下滑动页面找到“软件更新”选项。 2.点击“软件更新”,系统将开始检查更新,如果有更新可以选择“立即更新”或设置定时更新时间。 3.在升级过程中,请确保手机电池电量充足并保持良好的网络连接。 4.当下载完成后,系统将自动重启并安…

    other 2023年6月27日
    00
  • Maya怎么打洞? maya模型打洞的三种方法

    Maya是一款常用的三维建模软件,它提供了多种方法来对模型进行切割、拼接等操作。打洞是指在模型表面创建一个圆孔或者任意形状的孔洞,可以用来模拟物体的裂口或者用于布料等模拟。下面介绍几种常用的打洞方法。 方法一:使用建模工具 1.选择要打洞的模型,进入编辑模式。2.选择鼠标右侧的切边工具,选中一个边缘进行切割。3.按住Ctrl键,选中新切割的两个边缘,右键选择…

    other 2023年6月27日
    00
  • 在ubuntu下安装apache

    在Ubuntu下安装Apache Apache 是一个广泛使用的 web 服务器软件,是开放源代码软件的一个典范。本文将介绍如何在 Ubuntu 操作系统下安装 Apache。 步骤一:更新软件包列表 在进行任何安装之前,最好先更新系统中的软件包列表。使用以下命令更新: sudo apt-get update 步骤二:安装 Apache 安装 Apache …

    其他 2023年3月29日
    00
  • 漂亮实用的页面loading(加载)封装代码

    下面是详细的“漂亮实用的页面loading(加载)封装代码”的攻略。 什么是页面loading? 在访问网站页面的过程中,如果页面需要加载大量的内容,或者网络速度较慢,那么用户在等待页面加载的同时就会感到极为不耐烦。这时我们就需要一个页面loading来提示用户正在加载中,提高用户体验和满意度。 loading的封装代码实现 第一步:添加代码 我们需要在ht…

    other 2023年6月25日
    00
  • jenkins持续集成自动化测试项目

    Jenkins持续集成自动化测试项目攻略 Jenkins是一个开源的自动化构建工具,可以用于持续集成和持续交付。在本文中,我们将详细讲解如何使用Jenkins进行持续集成自动化测试项目,包括安装Jenkins、配置Jenkins、Jenkins任务、编写测试脚本等内容。 安装Jenkins 首先,需要安装Jenkins。可以按照以下步骤安装Jenkins: …

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