1. 程式人生 > >前端輕量級web進度條 – Nprogress & nanobar

前端輕量級web進度條 – Nprogress & nanobar

前言

進度條庫是前端中常見的庫之一,bootstrap中提供了多種進度條樣式。NProgress.js和nanobar.js是兩款輕量級的進度條元件,使用簡便。軒楓閣用過Nprogress,用於頁面剛開啟時的頁面載入進度顯示。

官網

(1)NProgress

這裡寫圖片描述

簡介

輕量級的ajax進度條應用,靈感來自Google, YouTube, and Medium。

納米級的進度條。 具有逼真的動畫涓涓細流來說服你的使用者,something is happen!

安裝

引入nprogress.js和nprogress.css到專案中。

基本用法

只需要呼叫start() 和 done()來控制進度條

NProgress.start();
NProgress.done();

高階用法

百分比:通過設定progress的百分比,呼叫 .set(n)來控制進度,其中n的取值範圍為0-1。

NProgress.set(0.0);     // Sorta same as .start()
NProgress.set(0.4);
NProgress.set(1.0);     // Sorta same as .done()

遞增:要讓進度條增加,只要呼叫 .inc()。這會產生一個隨機增量,但不會讓進度條達到100%。此函式適用於圖片載入或其他類似的檔案載入

NProgress.inc();

強制完成:通過傳遞 true 引數給done(),使進度條滿格,即使它沒有被顯示。

NProgressN .done(true);

配置

minimum:設定最低百分比

NProgress.configure({ minimum: 0.1 });

template:改變進度條的HTML結構。為保證進度條能正常工作,需要元素擁有role=’bar’屬性。

NProgress.configure({
  template: "<div class='....'>...</div>"
});

ease:調整動畫設定,ease可傳遞CSS3緩衝動畫字串(如ease、linear、ease-in、ease-out、ease-in-out、cubic-bezier)。speed為動畫速度(單位ms)。

NProgressN .configure({ ease: 'ease', speed: 500 });

更多用法

.nanobar

這裡寫圖片描述

簡介

非常非常輕量級的進度條,壓縮過後僅有730位元組。不需要引入jQuery。

相容性:IE8和the rest of the world

安裝

通過安裝包管理器安裝:

Bower:

$ bower install nanobar

npm:

$$ npm install nanobar

使用

在專案中引入nanobar.js即可。

<<script src="path/to/nanobar.js"></script>

進度的建立

var nanobar = new Nanobar( options );

引數

bg <String>:(可選)CSS背景顏色屬性,預設為”#000″即黑色。

id <String>:(可選)nanobar的div的id

target <DOM Element>:設定防止進度條HTML程式碼的位置,若target為空則會固定到document的頂部位置。

進度運動

nanobar.go(percentage):調整進度

percentage :nonabar的百分比,取值為0-100

例子

var options = {
    bg: '#acf',
    // leave target blank for global nanobar
    target: document.getElementById('myDivId'),
    // id for new nanobar
    id: 'mynano'
};

var nanobar = new Nanobar( options );

//move bar
nanobar.go( 30 ); // size bar 30%

// Finish progress bar
nanobar.go(100);

Bootstrap進度條元件