javascript 进度条 实现代码


Posted in Javascript onJuly 30, 2009

首先:建立两个类,一个是用来与资料进行连接(数据层),另一个是用来关联前一个类与页面的(逻辑层)
新建一个JScsrip.js 文件
代码如下:

function setPgb(pgbID, pgbValue,pvalues) 
{ 
if ( pgbValue <= pvalues ) 
{ 
if (lblObj = document.getElementById(pgbID+'_label')) 
{ 
lblObj.innerHTML =Math.ceil((pgbValue/pvalues)*100) + '%'; // change the label value 
} 
if ( pgbObj = document.getElementById(pgbID) ) 
{ 
var divChild = pgbObj.children[0]; 
pgbObj.children[0].style.width = Math.ceil((pgbValue/pvalues)*240);//pgbValue; 
} 
window.status = "数据读取第" + pgbValue+"条,请稍候"; 
} 
if ( pgbValue == pvalues ) 
{ 
window.status = "数据读取已经完成"; 
proBar.style.display="none"; 
Table1.style.display="none"; 
} 
}

建立一个 common.css
代码如下:
.bi-loading-status 
{ 
/**//*position: absolute;*/ 
width: 250px; 
padding: 1px; 
overflow: hidden; 
} 
.bi-loading-status .text{ 
white-space: nowrap; 
overflow: hidden; 
width: 100%; 
text-overflow: ellipsis; 
padding: 1px; 
} 
.bi-loading-status .progress-bar { 
border: 1px solid ThreeDShadow; 
background: window; 
height: 10px; 
width: 100%; 
padding: 1px; 
overflow: hidden; 
} 
.bi-loading-status .progress-bar div { 
background: Highlight; 
overflow: hidden; 
height: 100%; 
filter: Alpha(Opacity=0, FinishOpacity=100, Style=1, StartX=0, StartY=0, FinishX=100, FinishY=0); 
}

建立一个 progressbar.htm
代码如下:
<body topmargin="0" leftmargin="0"> 
<table width="100%" height="100%" ID="Table1" runat=server> 
<tr> 
<td align="center" valign="middle"> 
<DIV class="bi-loading-status" id="proBar" style=" LEFT: 425px; TOP: 278px" align="left"> 
<DIV class="text" id="pgbMain_label" align="left"></DIV> 
<DIV class="progress-bar" id="pgbMain" align="left"> 
<DIV STYLE="WIDTH:5%"></DIV> 
</DIV> 
</DIV> 
</td> 
</tr> 
</table> 
</body>

建立一个 Default.aspx 文件
前台代码如下:
<head> 
<script language="javascript" src="JScript.js" type="text/javascript"></script> 
</head> 
<body > 
<form id="Form1" method="post" runat="server"> 
<asp:GridView ID="GridView1" runat="server"> 
</asp:GridView> 
</form> 
</body>

后台代码如下:
public partial class _Default : System.Web.UI.Page 
{ 
DataSet ds; 
text ts = new text(); 
int count = 0; 
#region Page_Load 
private void Page_Load(object sender, System.EventArgs e) 
{ 
if (!Page.IsPostBack) 
{ 
ds = Getgridview(); 
count = ds.Tables[0].Rows.Count; 
Response.Write("count=" + count); 
string strFileName = Server.MapPath("progressbar.htm"); 
StreamReader sr = new StreamReader(strFileName, System.Text.Encoding.Default); 
string strHtml = sr.ReadToEnd(); 
Response.Write("<div style='align:center;valign:bottom;'>" + strHtml + "</div>"); 
sr.Close(); 
Response.Flush(); 
Thread thread = new Thread(new ThreadStart(ThreadProc)); 
thread.Start(); 
LoadData(ds); 
// Getgridview(); 
//load数据 
thread.Join(); 
} 
} 
#endregion fixedHeader 
#region Getgridview 
protected DataSet Getgridview() 
{ 
ds = ts.QueryProcS("2009/07", "XXXX");//这个是逻辑层中的一个方法 
return ds; 
} 
#endregion 
#region ThreadProc 
private void ThreadProc() 
{ 
string strScript = "<script>setPgb('pgbMain','{0}','" + count + "');</script>"; 
for (int i = 0; i <= count; i++) 
{ 
System.Threading.Thread.Sleep(80); 
Response.Write(string.Format(strScript, i)); 
Response.Flush(); 
} 
} 
#endregion LoadData 
#region LoadData 
private void LoadData(DataSet dds) 
{ 
for (int m = 0; m < count; m++) 
{ 
for (int i = 0; i < dds.Tables[0].Columns.Count; i++) 
{ 
} 
} 
this.GridView1.DataSource = dds.Tables[0].DefaultView; 
this.GridView1.DataBind(); 
} 
#endregion Web Form Designer generated code 
#region Web Form Designer generated code 
override protected void OnInit(EventArgs e) 
{ 
// 
// CODEGEN: This call is required by the ASP.NET Web Form Designer. 
// 
InitializeComponent(); 
base.OnInit(e); 
} 
/**/ 
/// <summary> 
/// Required method for Designer support - do not modify 
/// the contents of this method with the code editor. 
/// </summary> 
private void InitializeComponent() 
{ 
//this.Load += new System.EventHandler(this.Page_Load); 
} 
#endregion 
}

启动加载页面时如下图所示。
javascript 进度条 实现代码
加载完后会自动显示你要显示的数据。
Javascript 相关文章推荐
javascript据option的value值快速设定初始的selected选项
Aug 13 Javascript
js中点击空白区域时文本框与隐藏层的显示与影藏问题
Aug 26 Javascript
基于jQuery实现的向下滑动二级菜单效果代码
Aug 31 Javascript
JavaScript Split()方法
Dec 18 Javascript
如何通过js实现图片预览功能【附实例代码】
Mar 30 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
Sep 19 Javascript
微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
Apr 18 Javascript
AjaxUpLoad.js实现文件上传
Mar 05 Javascript
npm配置国内镜像资源+淘宝镜像的方法
Sep 07 Javascript
Nginx设置为Node.js的前端服务器方法总结
Mar 27 Javascript
js实现漂亮的星空背景
Nov 01 Javascript
js前端设计模式优化50%表单校验代码示例
Jun 21 Javascript
JS input 数字验证代码
Jul 30 #Javascript
关于取不到由location.href提交而来的上级页面地址的解决办法
Jul 30 #Javascript
window.parent调用父框架时 ie跟火狐不兼容问题
Jul 30 #Javascript
javascript EXCEL 操作类代码
Jul 30 #Javascript
JavaScript this 深入理解
Jul 30 #Javascript
Google Map API更新实现用户自定义标注坐标
Jul 29 #Javascript
JavaScript Konami Code 实现代码
Jul 29 #Javascript
You might like
缓存技术详谈―php
2006/12/14 PHP
php阿拉伯数字转中文人民币大写
2015/12/21 PHP
javascript编程起步(第二课)
2007/01/10 Javascript
DOM 基本方法
2009/07/18 Javascript
javascript 一个函数对同一元素的多个事件响应
2009/07/25 Javascript
javascript 一些用法小结
2009/09/11 Javascript
如何用ajax来创建一个XMLHttpRequest对象
2012/12/10 Javascript
使用js实现雪花飘落效果
2013/08/26 Javascript
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
jquery计算鼠标和指定元素之间距离的方法
2015/06/26 Javascript
jQuery三级下拉列表导航菜单代码分享
2020/04/15 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
jquery判断密码强度的验证代码
2020/04/22 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
AngularJS中的缓存使用
2017/01/11 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
小试小程序云开发(小结)
2019/06/06 Javascript
javascript中导出与导入实现模块化管理教程
2020/12/03 Javascript
[39:08]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第一场 12.12
2020/12/16 DOTA
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
python使用tornado实现登录和登出
2018/07/28 Python
Django ManyToManyField 跨越中间表查询的方法
2018/12/18 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
2019/01/04 Python
如何基于Python批量下载音乐
2019/11/11 Python
浅析python标准库中的glob
2020/03/13 Python
Python Pillow(PIL)库的用法详解
2020/09/19 Python
python中@contextmanager实例用法
2021/02/07 Python
英国著名的化妆品折扣网站:Allbeauty.com
2016/07/21 全球购物
Ejb技术面试题
2015/04/29 面试题
建筑施工实习自我鉴定
2013/09/19 职场文书
自我评价优秀范文分享
2013/11/30 职场文书
2015年行政部工作总结
2015/04/28 职场文书
请假条应该怎么写?
2019/06/24 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
mysql 生成连续日期及变量赋值
2022/03/20 MySQL