Java基础、中级、高级、架构面试资料

基于jQuery的页面加载进度条nprogress.js使用教程

HTML5 herman 4003浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

如果你登录谷歌的广告联盟,你就会发现它所采用的进度条和我们常见的不太一样。它在页面的最上面top部分,有一个线条在进行加载,我们俗称它为页面加载进度条。本文将借助 jQueryNProgress.js 插件来模仿它。

NProgress.js提供页面加载进度条效果,当页面打开加载时,在页面顶部会出现进度条加载动画。NProgress.js是轻量级的进度条组件,使用简便,可以很方便集成到单页面应用中。

下面是 NProgress.js 的4个主要函数:

  • NProgress.start() ? 显示进度条
  • NProgress.set(0.4) ? 设置百分比
  • NProgress.inc() ? 一个小增量
  • NProgress.done() ? 完成进度

安装

$ npm install --save nprogress 

或者直接引用 nprogress.js 和nprogress.css 文件到你的页面中。

<script src='nprogress.js'></script> 
<link rel='stylesheet' href='nprogress.css'/>

下面是 NProgress.js 的一些基本的配置:

Progress.configure({
	minimum: 0.1,
	template: "...",//标记修改
	ease: 'ease',//动画设置
	speed: 500,//动画速度
	trickle: false,//关闭进度条
	trickleRate: 0.02,//每次步进增长多少
	trickleSpeed: 800,//步进间隔,单位毫秒ms
	showSpinner: false//禁用进度环
});

nprogress.js 的用法很简单,只需要掌握下面的几个函数即可。

NProgress.start();  // 开始加载 
NProgress.done();  // 加载完成 
NProgress.set(0.0);     // Sorta same as .start() 
NProgress.set(0.4); 
NProgress.set(1.0);     // Sorta same as .done() 
NProgress.inc(); // 递增 
NProgress.done(true);  // 强制完成 

下面看一个完整的例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>业余草:NProgress.JS-页面加载进度条</title>
<link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/demo.css">
<link rel="stylesheet" type="text/css" href="css/nprogress.css">
</head>
<body>
<div class="container">
    <div class="row main">
        <div class="col-md-12">
            <div class="row" style="margin-top: 30px">
                <div class="col-md-offset-2 col-sm-12">
                    <p>Ajax异步加载,注意看页面顶部进度条</p><br/>
                    <button class="btn btn-info" id="loading">点击加载远程数据</button>
                    <div id="msg" style="margin: 10px; color: #f60"></div>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script src="js/nprogress.js"></script>
<script>
NProgress.start();
setTimeout(function() { NProgress.done(); }, 1000);
//业余草:www.xttblog.com
$('#loading').on('click', function(event) {
    event.preventDefault();
    //NProgress.configure({ trickle: false });
    NProgress.start();
    $.get('data.php', function(data) {
        $('#msg').html(data);
        NProgress.done();
    });
//业余草:www.xttblog.com
});
</script> 
</body>
</html>

以上就是 NProgress.js 的相关教程,如有不懂,请留言讨论!

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » 基于jQuery的页面加载进度条nprogress.js使用教程