1. 程式人生 > >JQuery UI之(六)進度條——Progressbar

JQuery UI之(六)進度條——Progressbar

一、前言

進度條可以向用戶顯示程式當前完成的百分比,讓使用者知道程式的進度,提高了使用者體驗。

二、最簡單的例子

首先引入樣式和js庫:

<link type="text/css" rel="Stylesheet" href="css/jquery-ui-1.7.2.custom.css" />

<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>

<script type="text/javascript" src="js/jquery-ui-1.7.2.custom.min.js"></

script>

可以使用div來作為顯示進度條的載體:

<div id="divProgressbar"></div>

將上面的div變成進度條:

<script type="text/javascript">

$(function(){

$("#divProgressbar").progressbar({value: 30});//初始話進度條並設定初始值為30

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));//讀取進度條的當前值

});

</script>

一執行例子就明白

三、要進度條動起來怎麼辦?

做個小實驗,修改jquery程式碼如下:

<script type="text/javascript">

$(function(){

$("#divProgressbar").progressbar({value: 30});

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));

$("#divProgressbar").progressbar({value: 60});

alert("當前值是: " + $("#divProgressbar").progressbar("option"

, "value"));

$("#divProgressbar").progressbar({value: 90});

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));

});

</script>

執行,看是什麼結果,進度條沒變化,每次彈出框的值都是30吧!為什麼捏?因為.progressbar({value: 30})是用來初始化的上面已經在程式碼的註釋裡提到,在dialog那篇裡也說到同一個控制元件是不允許被多次初始化的,所以我們必須用其它的方法來修改進度條的當前值,jQuery提供了.progressbar("option", "value", 60)方法來設定當前值,這裡還可以發現,不在後面加數值引數的話就是讀取當前值。

再修改程式碼如下:

<script type="text/javascript">

$(function(){

$("#divProgressbar").progressbar({value: 30});

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));

$("#divProgressbar").progressbar("option", "value", 60);

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));

$("#divProgressbar").progressbar("option", "value", 90);

alert("當前值是: " + $("#divProgressbar").progressbar("option", "value"));

});

</script>

嘿嘿——進度條動起來了,而且彈出框的值也變化了。

四、可以實用的進度條

修改程式碼如下:

<script type="text/javascript">

$(function(){

updateProgressbarValue();//呼叫函式

function updateProgressbarValue(){

$("#divProgressbar").progressbar({value: 0}); //初始化進度條,如果已經初始化則會跳過

var newValue = $("#divProgressbar").progressbar("option", "value") + 3;//讀取進度條現有值並計算出新值

$("#divProgressbar").progressbar("option", "value", newValue);//設定進度條新值

setTimeout(updateProgressbarValue, 500);//使用setTimeout函式延遲呼叫updateProgressbarValue函式,延遲時間為500毫秒

}

});

</script>

這裡最重要的是使用了setTimeout來延遲呼叫函式,並且這是一個自巢狀函式,如果沒有終止它的話它將一直執行下去,這是不被允許的。

setTimeout(updateProgressbarValue, 500);前加入下面的程式碼就知道了:

alert(newValue);

五、在適當的地方終止這個傻頭傻腦的程式

其實我們只需要在setTimeout(updateProgressbarValue, 500);前加一個判斷就ok了:

if(newValue <= 100)setTimeout(updateProgressbarValue, 10);

這樣我們就可以在進度條滿了後終止這個傻瓜繼續執行。

最終程式碼如下:

<script type="text/javascript">

$(function(){

updateProgressbarValue();

function updateProgressbarValue(){

$("#divProgressbar").progressbar({value: 0});

var newValue = $("#divProgressbar").progressbar("option", "value") + 10;

$("#divProgressbar").progressbar("option", "value", newValue);

alert(newValue);

if(newValue <= 100) setTimeout(updateProgressbarValue, 10);

}

});

</script>

相關推薦

JQuery UI()進度——Progressbar

一、前言 進度條可以向用戶顯示程式當前完成的百分比,讓使用者知道程式的進度,提高了使用者體驗。 二、最簡單的例子 首先引入樣式和js庫: <link type="text/css" rel="S

【React Native開發】React Native控件ProgressBarAndroid進度解說(12)

ice 發現 來講 top 文章 func dev all ios 轉載請標明出處:http://blog.csdn.net/developer_jiangqq/article/details/50596367本文出自:【江清清的博客】(一)前言 【好消息】

Android零基礎入門第51節:進度ProgressBar

動態更新 監聽 bar 統架構 堆疊 rop sha bfd 自動完成文本 不知不覺這已經是第51期了,在前面50期我們學了Android開發中使用頻率非常高的一些UI組件,當然這些組件還不足夠完成所有APP的開發,還會經常用到一些諸如進度條、拖動條、搜索框、時間和日

Framework7新版學習筆記 滑動進度

滑動 left data- val 滑塊 改變 進度條 筆記 spa 一:滑動進度條 滑動進度條是指:可以拖動來改變進度值的控件,例如:音量設置、亮度設置等。 二:定義滑動進度條 1:單邊滑塊進度條 滑塊從0~max進行滑動,滑塊所處位置就是

進度 ProgressBar的簡單運用

進度條 ProgressBar 1 常用屬性 style=”?android:attr/progressBarStyleHorizontal” 預設為圓形 android:progress=”33” android:max=”100” 執行緒休眠 Thread.sleep(100

安卓進度ProgressBar

介面程式碼 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="htt

Android控制元件圓形進度

Android-自定義ProgressBar實現圓弧進度條 在之前的專案中用到過這個,感覺還是非常實用的,我實現的是額度的增長. 繼承於ProgressBar實現,保留了Progressbar的特性,原始碼在文尾。

Python文字進度

import time for i in range(101): print("\r{:3}%".format(i), end=" ") time.sleep(0.1)   import time scale = 50 print("執行開始".center(s

白鷺egret專案資源的loading,介面的顯示與載入進度:ProgressBar

1.用egret建立一個空的euigame專案; 2.點選f5執行空的專案[他自帶了一個載入的txt顯示]; EE:資源太少,載入速度太快,童鞋們可能注意不到; 然後,我們在egretwing的資源路徑加如下倆資料夾; loading【放載入介面用的圖片】和Pic【放測試loa

【Bootstrap】重寫Bootstrap進度ProgressBar完美實現文字居中

先看下Bootstrap預設的進度條樣式 可以看到在.progress-bar內的文字顯示在進度條已完成部分,在.progress內的文字顯示在進度條未完成部分。 綜合考慮了各種因素: 文字層需要浮在.progress-bar層上方 文字層需要能設定為width:

Android 三種常用實現自定義圓形進度 ProgressBar 及demo

           Android 自定義 進度條,一般有三種方式,最早一般使用UI給的圖片使用幀動畫,完成,後面兩種,一種是使用自定義顏色,另外一種是使用帶相近色的圖片加動畫完成。 下面具體 說一下三種方式,推薦使用第二種方式,如果這種達不到效果,或者比較高也可使用第一

android圓形進度ProgressBar顏色設定

Java程式碼 <ProgressBar        android:id="@+id/loadProgressBar"        android:layout_width="wrap_content"        android:layout_height="wrap_content" 

Android 各種自定義進度Progressbar

Android 自定義進度條 Progressbar 控制元件集合 Seekbar with labelled intervals Like Olx FilterView Seekbar Android-ProgressViews

Android動畫——圓形進度加波浪線

效果圖 圓形進度條 public class RecordView extends View { //View預設最小寬度 private static final int DEFAULT_MIN_WIDTH = 500; p

BS網頁中實現一個進度progressBar

早上看到了Eclipse的幫助頁面 有一個不錯的進度條,所以很感興趣.右鍵看了一下,原來就是用了個div的樣式,然後非同步請求進度處理資訊.把處理的進度資訊實時反應到頁面上. 原理明白了.程式碼很簡單.2個頁面.一個負責顯示,一個是非同步處理頁面. 1.progressBar

Android繪圖:自定義View——矩形進度、圓環進度、填充型進度、時鐘

主函式 這幾種進度條的主函式都是類似的,所以下面我只給出了一個填充型進度條的主函式,其他幾個主函式只是在這基礎上改動一下按鈕id(即與各自佈局裡面的id相同即可),還有改動一下相對應的類即可。 public class MainActivity

自定義進度圓角進度問題

Android自定義進度條是開發中比較常見的一個需求,在之前的部落格中也介紹過如何通過自定義ProgressBar的樣式來實現自定義水平進度條和環形進度條。本文主要是對近期一個專案中的圓角進度條的實現做一個記錄。 設計給出的圖是這樣的: 拿到設計圖,對於

自定義圓形進度ProgressBar的三種方式

進度條預設是不確定(indeterminate=true)Android進度條 Android進度條有4種風格可以使用。 預設值是progressBarStyle。 設定成progressBarStyleSmall後,圖示變小。 設定成progressBarStyleLarge後,圖示變大 設定成progr

android自定義控制元件圓形進度(帶動畫)

首先貼上圖片: 額,感覺還行吧,就是進度條的顏色醜了點,不過咱是程式設計師,不是美工,配色這種問題當然不在考慮範圍之內了 下面說重點,如何來寫一個這樣的自定義控制元件。 首先,需要有一個灰色的底圖,來作為未填充時的進度條; 然後,根據傳入的當前進度值,繪製填充時的進度圓

【Android進度】三種方式實現自定義圓形進度ProgressBar

總結了3種方法: 1.多張圖片切換 2.自定義顏色 3.旋轉自定義圖片 其它: Android自定義控制元件NumberCircleProgressBar(圓形進度條)的實現:點選開啟連結 橫線帶數字進度條:點選開啟連結