pace.js和NProgress.js两个加载进度插件的一点小总结


Posted in Javascript onJanuary 31, 2018

这两个插件都是关于加载进度动画的,应该说各有特点吧,最起码对我来说是各有优势的。今天一天就捣鼓了加载进度动画,也研究了大量的(也就这两个)加载进度动画,也算对加载进度动画有了一个初步的了解了吧。

NProgress.js

NProgress是基于jquery的,且版本要 >1.8

API:

 

NProgress.start() — 启动进度条

NProgress.set(0.4) — 将进度设置到具体的百分比位置

NProgress.inc() — 少量增加进度

NProgress.done() — 将进度条标为完成状态

引入:

<link rel="stylesheet" type="text/css" href="css/NProgress.css" rel="external nofollow" >
 <script src="js/NProgress.js" type="text/javascript"></script><br>//还有jquery要引入进来

使用:

<script>
$(function() {
 NProgress.start();
 
$(window).load(function() {
 
NProgress.done();
 });
</script>

自定义动画样式:

将我们定义的样式写到一个script标签里,这算是一个小技巧吧。

<script type="text" id="myId"><br><div class="splash card"><br> 
<p class="lead" style="text-align:center">不要回来,马上走开...</p>

 <div class="progress">
 
<div class="mybar" role="bar">
 
</div>
 
</div>
</div><br></script>

这是css

html,body,iframe{
 margin: 0;
 padding: 0;
}
#nprogress{
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 background-color: #f7f7f7;
 z-index: 999;
}
.spinner-icon{
 display: none!important;
}
.splash {
 position:absolute;
 top:40%;
 left:0;
 right:0;
 margin: auto;
 }
 .splash img {
 display: block;
 margin-left: auto;
 margin-right: auto;
 height: 100px;
 width: 100px;
 }
 .card {
 background-color: #f7f7f7;
 padding: 20px 25px 15px;
 margin: 0 auto 25px;
 width: 380px;
 }
 .mybar {
 background: #29d;
 height:10px;
 }
 .progress {
 height: 10px;
 overflow: hidden;
 }

js代码变成了这样:

<script type="text/javascript">
 $(function(){
  NProgress.configure({
  template: $('#myId').html() // template是用来设置动画样式的属性
  });
  NProgress.start();
 });
 $(window).load(function(){
  NProgress.done();
 })
 </script>

总结:在js里控制动画什么时候开始,什么时候结束,已及加载的动画样式。

在自定义样式里关键的两个指针就是  role 属性:

role=bar :横向加载条

role=spinner 旋转的小圈

样例2:(省略了css)

<script type="text" id="myId">
<em id="__mceDel"><em id="__mceDel"><div class="bar" role="bar" style="display=block"><br>

<div class="peg"></div><br>
</div><br>
<div class="spinner" role="spinner"><br>

<div class="spinner-icon"></div><br>
</div></em></em>
</script>

pace.js:

API:

Pace.start:开始显示进度条,如果你不是使用AMD或者Browserify来加载模块的话,这个会默认执行。
Pace.restart:进度条重新加载以及显示。
Pace.stop:隐藏进度条以及停止加载。
Pace.track:监测一个或者多个请求任务。
Pace.ignore:忽略一个或者多个请求任务。 

用法:

<head>
 <script src="/pace/pace.js"></script>
 <link href="/pace/themes/pace-theme-barber-shop.css" rel="external nofollow" rel="stylesheet" /> <br><!-- 此处的css样式就决定了加载进度动画的样式 -->
</head>

改变动画样式:

pace里已经设计好了许多种加载进度动画,只需要变化css文件就可以了

总结:

pace的优点有直接引入文件就可以了,不需要在自己写任何代码,就自带了加载进度动画,只是有一个缺点,官网提供的加载进度动画都没有遮罩层。

当然,可以自己进行设置(我不会);

以上所述是小编给大家介绍的pace.js和NProgress.js两个加载进度插件的一点小总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
一款JavaScript压缩工具:X2JSCompactor
Jun 13 Javascript
一个用js实现控制台控件的代码
Sep 04 Javascript
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
Apr 24 Javascript
解析JavaScript中点号“.”的多义性
Dec 02 Javascript
推荐9款炫酷的基于jquery的页面特效
Dec 07 Javascript
微信JS接口汇总及使用详解
Jan 09 Javascript
jQuery Validation PlugIn的使用方法详解
Dec 18 Javascript
javascript实现任务栏消息提示的简单实例
May 31 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
Oct 07 Javascript
Node.js使用gm拼装sprite图片
Jul 04 Javascript
基于Vue 实现一个中规中矩loading组件
Apr 03 Javascript
Vue+axios封装请求实现前后端分离
Oct 23 Javascript
微信小程序App生命周期详解
Jan 31 #Javascript
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 #jQuery
微信小程序switch组件使用详解
Jan 31 #Javascript
vue项目中导入swiper插件的方法
Jan 30 #Javascript
微信小程序实现手势图案锁屏功能
Jan 30 #Javascript
简单理解Vue中的nextTick方法
Jan 30 #Javascript
Vue组件中slot的用法
Jan 30 #Javascript
You might like
php实现图片局部打马赛克的方法
2015/02/11 PHP
javascript+php实现根据用户时区显示当地时间的方法
2015/03/11 PHP
php微信开发之自定义菜单实现
2016/11/18 PHP
yii2多图上传组件的使用教程
2018/05/10 PHP
重定向实现代码
2006/11/20 Javascript
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
toggle一个div显示或隐藏且可扩展成自定义下拉框
2013/09/12 Javascript
鼠标滚轮改变图片大小的示例代码
2013/11/20 Javascript
页面装载js及性能分析方法介绍
2014/03/21 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
浅谈js继承的实现及公有、私有、静态方法的书写
2016/10/28 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
2016/12/19 Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
2017/01/06 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
详解微信小程序input标签正则初体验
2018/08/18 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
2018/09/26 Javascript
node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】
2019/03/07 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
解决echarts中横坐标值显示不全(自动隐藏)问题
2020/07/20 Javascript
python 遍历字符串(含汉字)实例详解
2017/04/04 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
Python json模块与jsonpath模块区别详解
2020/03/05 Python
pyinstaller打包找不到文件的问题解决
2020/04/15 Python
Python参数传递机制传值和传引用原理详解
2020/05/22 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
工商管理专业学生的自我评价
2013/10/01 职场文书
个人查摆剖析材料
2014/02/04 职场文书
给校长的建议书100字
2014/05/16 职场文书
运动会开幕词
2015/01/28 职场文书
幼儿园家长工作总结2015
2015/04/25 职场文书
小学教师见习总结
2015/06/23 职场文书
员工升职自我评价
2019/03/26 职场文书
Redis基于Bitmap实现用户签到功能
2021/06/20 Redis