javascript實(shí)現(xiàn)簡(jiǎn)單的進(jìn)度條
示例一:
<!doctype html> <html> <head> <meta charset="utf8"> <title>Process Bar</title> <script> var t; function s(c) { if(c<=100) { val.style.width=c+"%"; percent.innerHTML=c+"%"; btn.disabled=true; btnp.disabled=false; c=c+10; t=setTimeout("s("+c+")",500); } else { clearTimeout(t); btnc.disabled=false; btnp.disabled=true; return; } } function c() { clearTimeout(t); val.style.width="0px"; percent.innerHTML="0%"; btn.disabled=false; btnc.disabled=true; btnp.disabled=true; btnp.value='Pause'; } function p() { var temp; if('Pause' == btnp.value) { clearTimeout(t); btnp.value='Go on'; btnc.disabled=false; } else { temp=val.style.width; btnp.value='Pause'; var k=parseInt(delEnd(temp)); s(k); btnc.disabled=true; } } function delEnd(str) { var temp=""; for(var i=0; i < str.length-1; i++) { temp=temp+str[i]; } return temp; } </script> </head> <body> <div id="bar" style="width:300px; height:30px; border:solid 1px; float:left;"> <div id="val" style="height:100%; background-color:#03F; width:0px;"></div> </div> <div id="percent" style="float:left; line-height:30px;">0%</div> <div style="clear:both"></div> <br /> <input id="btn" type="button" value="Start" onClick="s(0)" /> <br /> <input id="btnc" type="button" value="Clear" onClick="c()" disabled /> <br /> <input id="btnp" type="button" value="Pause" onClick="p()" disabled /> </body> </html>
再來(lái)分享一個(gè)結(jié)合.net的
建立一個(gè)WEB工程,添加新項(xiàng)->HTML頁(yè)面,命名為ProgressBar.htm,內(nèi)容如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" id="mainWindow"> <head> <title>無(wú)標(biāo)題頁(yè)</title> <script language="javascript"> function SetPorgressBar(pos) { //設(shè)置進(jìn)度條居中 var screenHeight = window["mainWindow"].offsetHeight; var screenWidth = window["mainWindow"].offsetWidth; ProgressBarSide.style.width = Math.round(screenWidth / 2); ProgressBarSide.style.left = Math.round(screenWidth / 4); ProgressBarSide.style.top = Math.round(screenHeight / 2); ProgressBarSide.style.height = "21px"; ProgressBarSide.style.display = ""; //設(shè)置進(jìn)度條百分比 ProgressBar.style.width = pos + "%"; ProgressText.innerHTML = pos + "%"; } //完成后隱藏進(jìn)度條 function SetCompleted() { ProgressBarSide.style.display = "none"; } </script> </head> <body> <div id="ProgressBarSide" style="position:absolute;height:21x;width:100px;color:Silver;border-width:1px;border-style:Solid;display:none"> <div id="ProgressBar" style="position:absolute;height:21px;width:0%;background-color:#3366FF"></div> <div id="ProgressText" style="position:absolute;height:21px;width:100%;text-align:center"></div> </div> </body> </html>
后臺(tái)代碼,Default.aspx.cs:
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Threading; using System.IO; public partial class _Default : System.Web.UI.Page { private void beginProgress() { //根據(jù)ProgressBar.htm顯示進(jìn)度條界面 string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm"); StreamReader reader = new StreamReader(@templateFileName,System.Text.Encoding.GetEncoding("GB2312")); string html = reader.ReadToEnd(); reader.Close(); Response.Write(html); Response.Flush(); } private void setProgress(int percent) { string jsBlock = "<script>SetPorgressBar('" + percent.ToString() + "'); </script>"; Response.Write(jsBlock); Response.Flush(); } private void finishProgress() { string jsBlock = "<script>SetCompleted();</script>"; Response.Write(jsBlock); Response.Flush(); } private void Page_Load(object sender, System.EventArgs e) { beginProgress(); for (int i = 1; i <= 100; i++) { setProgress(i); //此處用線程休眠代替實(shí)際的操作,如加載數(shù)據(jù)等 System.Threading.Thread.Sleep(50); } finishProgress(); } }
- JS實(shí)現(xiàn)環(huán)形進(jìn)度條(從0到100%)效果
- JS插件plupload.js實(shí)現(xiàn)多圖上傳并顯示進(jìn)度條
- 使用ReactJS實(shí)現(xiàn)tab頁(yè)切換、菜單欄切換、手風(fēng)琴切換和進(jìn)度條效果
- js HTML5 Ajax實(shí)現(xiàn)文件上傳進(jìn)度條功能
- js ajax加載時(shí)的進(jìn)度條代碼
- pace.js頁(yè)面加載進(jìn)度條插件
- JavaScript實(shí)現(xiàn)網(wǎng)頁(yè)加載進(jìn)度條代碼超簡(jiǎn)單
- jquery插件NProgress.js制作網(wǎng)頁(yè)加載進(jìn)度條
- js插件YprogressBar實(shí)現(xiàn)漂亮的進(jìn)度條效果
- js實(shí)現(xiàn)增加數(shù)字顯示的環(huán)形進(jìn)度條效果
相關(guān)文章
關(guān)于Iframe父頁(yè)面與子頁(yè)面之間的相互調(diào)用
下面小編就為大家?guī)?lái)一篇關(guān)于Iframe父頁(yè)面與子頁(yè)面之間的相互調(diào)用。小編覺(jué)得挺不錯(cuò)的,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧,祝大家游戲愉快哦2016-11-11javascript獲取網(wǎng)頁(yè)各種高寬及位置的方法總結(jié)
下面小編就為大家?guī)?lái)一篇javascript獲取網(wǎng)頁(yè)各種高寬及位置的方法總結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-07-07js求數(shù)組最大值的八種具體實(shí)現(xiàn)方法
數(shù)組如何求最大值,想必很多的朋友都不會(huì)吧,下面這篇文章主要給大家介紹了關(guān)于使用js求數(shù)組最大值的八種方法具體實(shí)現(xiàn)的相關(guān)資料,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下2023-09-09JavaScript中遍歷對(duì)象的property的3種方法介紹
這篇文章主要介紹了JavaScript中遍歷對(duì)象的property的3種方法介紹,本文先是講解了3種方法并用一張圖片加深理解,然后給出代碼實(shí)例,需要的朋友可以參考下2014-12-12tracking.js頁(yè)面人臉識(shí)別插件使用方法
這篇文章主要為大家詳細(xì)介紹了tracking.js頁(yè)面識(shí)別人臉插件使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11多種方法實(shí)現(xiàn)JS動(dòng)態(tài)添加事件
JS動(dòng)態(tài)添加事件的方法有很多,我們可以使用setAttribute、attachEvent 和 addEventListener等等,感興趣的朋友可以參考下2013-11-11bootstrap日歷插件datetimepicker使用方法
這篇文章主要為大家詳細(xì)介紹了bootstrap日歷datetimepicker插件的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12詳解微信小程序與內(nèi)嵌網(wǎng)頁(yè)交互實(shí)現(xiàn)支付功能
這篇文章主要介紹了詳解微信小程序與內(nèi)嵌網(wǎng)頁(yè)交互實(shí)現(xiàn)支付功能,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10