jQuery NProgress.js加载进度插件的简单使用方法

jQuery NProgress.js加载进度插件的简单使用方法

什么是NProgress.js?

NProgress.js是一款基于jQuery的加载进度条插件,它可以帮助你在页面载入、表单提交、AJAX请求等操作时显示进度条,提高了网站的用户体验,让用户感觉页面加载速度更快。

NProgress.js的使用方法

1.引入jQuery和NProgress.js的文件

在使用NProgress.js前,我们需要先引入jQuery和NProgress.js的文件,可以通过如下代码来实现:

<!-- 引入jQuery文件 -->
<script src="//cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>

<!-- 引入NProgress.js文件 -->
<link href="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.css" rel="stylesheet">
<script src="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.js"></script>

注意,上述代码中的CDN地址可以根据自己的需求来选择。

2.使用NProgress.js创建进度条

在上述文件引入完成后,我们就可以使用NProgress.js来创建进度条了。在加载页面、表单提交或Ajax请求时,我们需要调用NProgress.js的相关接口来实现进度条的创建与更新。

2.1 创建进度条

在页面第一次加载时,我们需要创建一个进度条,可以通过下面的代码实现:

NProgress.start();

上述代码中,NProgress是NProgress.js的全局对象,调用start()方法即可创建进度条。如果需要显示出动画效果,则可以调用下述代码实现:

NProgress.configure({ ease: 'ease', speed: 500 }); // 配置NProgress动画属性
NProgress.set(0.4); // 设置进度条显示的百分比
NProgress.inc(); // 自增进度条百分比,每次自动增加0.1

2.2 更新进度条

在表单提交或Ajax请求时,我们需要更新进度条,可以通过下述代码实现:

NProgress.done();

上述代码中,当表单或Ajax请求完成时,会自动调用done()方法,更新进度条为100%,并显示进度条的消失动画。

示例说明

示例1:页面加载中使用NProgress.js

当页面开始加载时,我们可以在页面底部添加一个进度条,暗示用户页面正在加载中,代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>NProgress.js进度条示例1</title>
    <link href="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.css" rel="stylesheet">
    <style type="text/css">
        #nprogress .bar {
            background: #29d;
            position: fixed;
            z-index: 1031;
            top: 0;
            left: 0;
            width: 100%;
            height: 2px;
        }
        #nprogress .peg {
            display: block;
            position: absolute;
            right: 0px;
            width: 100px;
            height: 100%;
            box-shadow: 0 0 10px #7dd;
            opacity: 1.0;
            -webkit-transform: rotate(3deg) translate(0px, -4px);
            -ms-transform: rotate(3deg) translate(0px, -4px);
            transform: rotate(3deg) translate(0px, -4px);
        }
    </style>
</head>
<body>
    <div id="nprogress">
        <div class="bar"></div>
        <div class="peg"></div>
    </div>
    <script src="//cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.js"></script>
    <script>
        $(document).ready(function() {
            NProgress.start();
        });
        $(window).on('load', function() {
            NProgress.done();
        });
    </script>
</body>
</html>

示例2:Ajax请求中使用NProgress.js

当我们发起一个Ajax请求时,可以添加一个进度条,暂停用户的其他操作前提醒用户查询正在被处理,示例如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>NProgress.js进度条示例2</title>
    <link href="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.css" rel="stylesheet">
    <style type="text/css">
        #nprogress .bar {
            background: #29d;
            position: fixed;
            z-index: 1031;
            top: 0;
            left: 0;
            width: 100%;
            height: 2px;
        }
        #nprogress .peg {
            display: block;
            position: absolute;
            right: 0px;
            width: 100px;
            height: 100%;
            box-shadow: 0 0 10px #7dd;
            opacity: 1.0;
            -webkit-transform: rotate(3deg) translate(0px, -4px);
            -ms-transform: rotate(3deg) translate(0px, -4px);
            transform: rotate(3deg) translate(0px, -4px);
        }
    </style>
</head>
<body>
    <div id="nprogress">
        <div class="bar"></div>
        <div class="peg"></div>
    </div>
    <button id="btn">查询</button>
    <div id="result"></div>
    <script src="//cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="//cdn.bootcss.com/nprogress/0.2.0/nprogress.min.js"></script>
    <script>
        $(document).ready(function() {
            $('#btn').on('click', function() {
                NProgress.start();
                $.get('http://localhost:3000/user', function(result) {
                    NProgress.done();
                    $('#result').html(result);
                });
            });
        });
    </script>
</body>
</html>

以上两个示例中,我们可以看到如何使用NProgress.js实现进度条的创建与更新。当页面或Ajax请求结束时都会自动调用done()方法,更新进度条为100%。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQuery NProgress.js加载进度插件的简单使用方法 - Python技术站

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

相关文章

  • layui动态绑定事件的方法

    一、概述 Layui是一款非常流行的前端UI框架,通过Layui可以非常方便地搭建网站前端。在Layui中,我们常常需要为某些元素动态绑定事件,例如给一个按钮绑定点击事件,但是如果使用传统的添加事件监听函数的方式可能会出现问题,这时候我们就需要动态绑定事件了。 二、动态绑定事件的方法 在Layui中,我们可以使用 done 函数来实现动态绑定事件的效果。具体…

    other 2023年6月27日
    00
  • HDD+HDD(SSD)多硬盘系统启动问题和解决方法

    HDD+HDD(SSD)多硬盘系统启动问题 在多硬盘系统中,系统启动时可能会出现问题。以HDD+HDD(SSD)为例,可能会出现以下问题: 系统不能够从正确的硬盘启动。 在BIOS中,我们设置的启动顺序可能不正确,或者硬盘的接口顺序不正确。 引导管理器不能够正确管理系统启动。 在多硬盘系统中,可能会存在多个引导管理器,它们的设置可能会相互干扰,导致系统无法启…

    other 2023年6月27日
    00
  • 网站制作不可不知的URL知识

    网站制作不可不知的URL知识攻略 在网站制作过程中,URL(统一资源定位符)是非常重要的一部分。它不仅是用户访问网站的入口,还对搜索引擎优化(SEO)和用户体验起着重要作用。下面是一份详细的URL知识攻略,帮助你了解网站制作中不可不知的URL知识。 1. URL的基本结构 URL由多个部分组成,包括协议、域名、路径和查询参数等。以下是URL的基本结构: 协议…

    other 2023年8月5日
    00
  • 关于linux服务器hosts文件配置详解

    下面我将详细讲解关于Linux服务器hosts文件配置的完整攻略。 什么是hosts文件 hosts文件是一个简单的文本文件,它被用来将IP地址和域名进行简单的映射。在Linux系统中hosts文件位于/etc/hosts路径下,它可以被用来配置DNS解析对于一些本地站点的自定义。 hosts文件的格式 在hosts文件中,每行表示一条IP地址和域名的映射关…

    other 2023年6月25日
    00
  • Shell脚本变量的只读 删除 类型及注释语法基础

    Shell脚本变量的只读、删除、类型及注释语法基础攻略 Shell脚本是一种用于自动化任务的脚本语言,变量是Shell脚本中非常重要的概念之一。在本攻略中,我们将详细讲解Shell脚本中变量的只读、删除、类型及注释语法基础。 变量的定义和赋值 在Shell脚本中,变量可以通过以下方式定义和赋值: variable_name=value 其中,variable…

    other 2023年8月15日
    00
  • 微信小程序中的数据存储实现方式

    title: ‘Learn WeChat Mini Program’, completed: false }, success: function(res) { console.log(res); // 输出:{ _id: ‘xxx’, errMsg: ‘collection.add:ok’ } }}); // 从数据库中查询数据db.collection(…

    other 2023年7月29日
    00
  • druid0.17入门(3)——数据接入指南

    Druid是一款开源的分布式数据存储和分析系统,可以用于实时数据处理和分析。以下是Druid数据接入的基本步骤: 安装Druid 首先需要安装Druid,可以从官网下载安装包进行安装。 配置数据源 在Druid中,需要配置数据源,可以使用以下数据源: Kafka Hadoop JDBC S3 配置数据源的方法因数据源而异,可以参考Druid官方文档进行配置。…

    other 2023年5月5日
    00
  • mybatis存储无限长度的数据

    MyBatis 存储无限长度的数据 MyBatis 是一种流行的持久化框架,它在数据层面上提供了许多的功能和特性。在本文中,我们将探讨 MyBatis 是如何存储无限长度的数据的。 为什么需要存储无限长度的数据 在我们的应用程序中,有些数据的长度是不确定的,例如,一些用户的评论、博文和文章等,这些数据的长度往往不受限制。在这种情况下,如果我们使用 MySQL…

    其他 2023年3月29日
    00
合作推广
合作推广
分享本页
返回顶部