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日

相关文章

  • windows10不能修改hosts解决方案(附管理员权限运行cmd的方法)

    Windows10不能修改hosts解决方案(附管理员权限运行cmd的方法) 问题描述 在 Windows 10 上,当你尝试修改 hosts 文件时,可能会收到一个错误提示,显示“你需要提供管理员权限才能更改此文件”。即使你已经以管理员身份运行了记事本或其他文本编辑器,也无法修改 hosts 文件。这是因为 hosts 文件位于系统保护区域,需要更高的权限…

    other 2023年6月26日
    00
  • MySQL约束constraint用法详解

    MySQL约束constraint用法详解 MySQL约束(constraint)是一种限制数据库中数据输入的规则,它可以保证数据的准确性和完整性。在MySQL中,常用的约束类型包括主键(primary key)、外键(foreign key)、唯一约束(unique)、非空约束(not null)、默认值约束(default)等。 主键(primary k…

    other 2023年6月25日
    00
  • 推荐近期15个node.js开发工具

    以下是“推荐近期15个node.js开发工具”的完整攻略: 推荐近期15个node.js开发工具 Node.js是一种基于Chrome8擎的JavaScript运行时,它可以在服务器端运行JavaScript代码。在Node.js开发中,使用一些好的工具可以提高开发效率和代码质量。本攻略介近期15个Node.js开发工具,帮助您更好地开发Node.js应用程…

    other 2023年5月7日
    00
  • Android实现沉浸式状态栏功能

    Android实现沉浸式状态栏功能攻略 沉浸式状态栏是一种在Android应用中隐藏系统状态栏并使应用内容占据整个屏幕的功能。下面是实现沉浸式状态栏功能的完整攻略。 步骤一:设置主题样式 首先,在styles.xml文件中定义一个新的主题样式,用于设置沉浸式状态栏的属性。示例代码如下: <style name=\"AppTheme\&quot…

    other 2023年8月26日
    00
  • dnf刺客按键设置方法 dnf刺客技能键设置技巧

    DNF刺客按键设置方法和技巧 DNF(地下城与勇士)是一款非常受欢迎的网游,而刺客是其中非常流行的职业之一。本文将详细介绍如何设置刺客的按键,并提供一些技巧和示例说明。 设置方法 在设置刺客的按键前,我们需要了解一些基本知识。刺客的技能分为主动技能和被动技能。主动技能需要手动触发,而被动技能则会在特定条件下自动触发。鉴于此,我们需要将主动技能设置为易于按下的…

    other 2023年6月27日
    00
  • golang中interface接口的深度解析

    Golang中Interface接口的深度解析 理解Interface接口 在Golang中,interface被称作为接口,它定义了一种方法集合,但是实现这些方法的具体结构并不在定义时确定,而是在后续具体实现时确定。interface实现了Java、C#等语言中接口的概念,但是与其他语言中的接口不同的是,Golang的interface是隐式实现(impl…

    other 2023年6月26日
    00
  • DOS下如何声明变量(定义变量)

    在DOS下,我们可以使用set命令来声明(定义)变量。 语法格式: set 变量名=变量值 其中,变量名和变量值之间必须要用等号(=)连接,中间不能有空格。变量名可以由字母、数字和下划线组成,但开头必须是字母或下划线。 以下是两个示例: 示例一: 假设我们要声明一个变量,名为age,值为18。 那么我们可以在命令行输入以下代码: set age=18 执行完…

    other 2023年6月27日
    00
  • svg使用marker画箭头(一)

    SVG使用marker画箭头(一) SVG是一种基于XML的矢量图形格式,可用于创建图形和动画效果。使用SVG,我们可以轻松地在网页上创建高质量的矢量图形,如任意线条、多边形、矩形、圆形等。本文将介绍如何使用marker属性在SVG中画箭头。 Marker属性介绍 Marker是SVG中一个非常有用的属性,它允许我们定义一个图形,在其他元素中引用并重复使用。…

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