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 相关文章推荐
jQuery中slice()方法用法实例
Jan 07 Javascript
JS实现在网页中弹出一个输入框的方法
Mar 03 Javascript
介绍JavaScript的一个微型模版
Jun 24 Javascript
JS实现的自定义右键菜单实例二则
Sep 01 Javascript
如何使用jquery easyui创建标签组件
Nov 18 Javascript
JS实现的数字格式化功能示例
Feb 10 Javascript
js实现3d悬浮效果
Feb 16 Javascript
小程序自定义组件实现城市选择功能
Jul 18 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
Sep 14 Javascript
微信小程序左滑删除功能开发案例详解
Nov 12 Javascript
浅析JavaScript预编译和暗示全局变量
Sep 03 Javascript
TypeScript 运行时类型检查补充工具
Sep 28 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获取网络文件的实现代码
2010/01/01 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
php面象对象数据库操作类实例
2014/12/02 PHP
php实现微信公众平台账号自定义菜单类
2014/12/02 PHP
php中ob_flush函数和flush函数用法分析
2015/03/18 PHP
Javascript面向对象之四 继承
2011/02/08 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
jquery如何根据值设置默认的选中项
2014/03/17 Javascript
jQuery+ajax中getJSON() 用法实例
2014/12/22 Javascript
javascript实现图片循环渐显播放的方法
2015/02/24 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
2015/12/30 Javascript
jQuery链式调用与show知识浅析
2016/05/11 Javascript
jQuery命名空间与闭包用法示例
2017/01/12 Javascript
canvas实现十二星座星空图
2017/02/14 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
JS中promise化微信小程序api
2018/04/12 Javascript
详解使用jest对vue项目进行单元测试
2018/09/07 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
[01:44]《为梦想出发》—联想杯DOTA2完美世界全国高校联赛
2015/09/30 DOTA
python通过imaplib模块读取gmail里邮件的方法
2015/05/08 Python
Python2.7基于淘宝接口获取IP地址所在地理位置的方法【测试可用】
2017/06/07 Python
简单实现Python爬取网络图片
2018/04/01 Python
Python实现读取txt文件并转换为excel的方法示例
2018/05/17 Python
解决python selenium3启动不了firefox的问题
2018/10/13 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
2018/12/15 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
Win下PyInstaller 安装和使用教程
2019/12/25 Python
Python转换字典成为对象,可以用&quot;.&quot;方式访问对象属性实例
2020/05/11 Python
Java byte数组操纵方式代码实例解析
2020/07/22 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
python 实现百度网盘非会员上传超过500个文件的方法
2021/01/07 Python
20佳惊艳的HTML5应用程序示例分享
2011/05/03 HTML / CSS
HTML5和CSS3实例教程总结(推荐)
2016/07/18 HTML / CSS
2015感人爱情寄语
2015/02/26 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书