公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云
如果你登录谷歌的广告联盟,你就会发现它所采用的进度条和我们常见的不太一样。它在页面的最上面top部分,有一个线条在进行加载,我们俗称它为页面加载进度条。本文将借助 jQuery 的 NProgress.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使用教程