NProgress显示顶部进度条效果及使用详解
NProgress实现显示加载进度条效果,具有逼真的动画涓涓细流来说服你的用户,无页面跳转效果 ,极大提高用户体验效果
1. 官网下载地址
实现效果如下GIF图片所示:(请求的数据比较小,所以跑得比较快,可以开发者工具Network设置为3G以下网速看得更清晰点)
2. 引入需要的 nprogress.css 和 nprogress.js 文件
<link rel="stylesheet" type="text/css" href="nprogress.css" rel="external nofollow" />
<script src="nprogress.js"></script>
3. 基本用法:只需要调用NProgress的 start() 和 done() 的API来控制进度条
NProgress最重要两个API就是start()和done(),基本一般用这两个就足够了。
·
NProgress.start(); //显示进度条
NProgress.done(); //完成进度条
·
下面结合ajax的ajaxStart()和ajaxStop()全局事件代码实现加载效果。
<body>
<button id="btn">请求</button>
<script src="nprogress.js"></script>
<script src="jquery.js"></script>
<script>
$(document)
.ajaxStart(function () {
//请求开始了
NProgress.start();
})
.ajaxStop(function () {
//请求结束了
NProgress.done();
})
$('#btn').on('click', function () {
$.get('time.php')
})
</script>
</body>
实现效果:(GIF)
4. NProgress 其他高级用法
(1)百分比:通过设置progress的百分比,调用 .set(n)来控制进度,其中n的取值范围为0-1。
NProgress.set(0.0);
NProgress.set(0.4);
NProgress.set(1.0);
(2)递增:要让进度条增加,只要调用 .inc()。这会产生一个随机增量,但不会让进度条达到100%。此函数适用于图片加载或其他类似的文件加载。
NProgress.inc();
(3)强制完成:通过传递 true 参数给done(),使进度条满格,即使它没有被显示。
NProgress.done(true);
5. NProgress 其他配置
(1)minimum:设置最低百分比
NProgress.configure({minimum:0.1});
(2)template:改变进度条的HTML结构。为保证进度条能正常工作,需要元素拥有role='bar'属性。
NProgress.configure({
template:"<div class='....'>...</div>"
});
(3)ease:调整动画设置,ease可传递CSS3缓冲动画字符串(如ease、linear、ease-in、ease-out、ease-in-out、cubic-bezier)。speed为动画速度(单位ms)。
NProgress.configure({ease:'ease',speed:500});
以上是 NProgress显示顶部进度条效果及使用详解 的全部内容, 来源链接: utcz.com/z/346176.html