NProgress顯示頂部進度條效果及使用詳解
NProgress實現(xiàn)顯示加載進度條效果,具有逼真的動畫涓涓細流來說服你的用戶,無頁面跳轉效果 ,極大提高用戶體驗效果
1. 官網(wǎng)下載地址
實現(xiàn)效果如下GIF圖片所示:(請求的數(shù)據(jù)比較小,所以跑得比較快,可以開發(fā)者工具Network設置為3G以下網(wǎng)速看得更清晰點)

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()全局事件代碼實現(xiàn)加載效果。
<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>
實現(xiàn)效果:(GIF)

4. NProgress 其他高級用法
(1)百分比:通過設置progress的百分比,調用 .set(n)來控制進度,其中n的取值范圍為0-1。
NProgress.set(0.0); NProgress.set(0.4); NProgress.set(1.0);
(2)遞增:要讓進度條增加,只要調用 .inc()。這會產(chǎn)生一個隨機增量,但不會讓進度條達到100%。此函數(shù)適用于圖片加載或其他類似的文件加載。
NProgress.inc();
(3)強制完成:通過傳遞 true 參數(shù)給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});
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
javascript自定義函數(shù)參數(shù)傳遞為字符串格式
本節(jié)主要介紹了通過自定義javascript函數(shù)傳遞參數(shù)為字符串格式的,用this傳遞、引號缺省,示例如下2014-07-07
xmlplus組件設計系列之路由(ViewStack)(7)
xmlplus 是一個JavaScript框架,用于快速開發(fā)前后端項目。這篇文章主要介紹了xmlplus組件設計系列之路由,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05
js select實現(xiàn)省市區(qū)聯(lián)動選擇
這篇文章主要為大家詳細介紹了js select實現(xiàn)省市區(qū)聯(lián)動選擇效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-08-08

