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"></
可以使用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"
$("#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(圓形進度條)的實現:點選開啟連結 橫線帶數字進度條:點選開啟連結