www.gusucode.com > 维六酷博客管理系统 1.1源码程序 > inc/fileUpProgress.asp
<% @codepage=936 EnableSessionState=False%> <HTML xmlns:v> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=gb2312"> <TITLE>文件上传进度指示条</TITLE> <STYLE> v\:*{behavior:url(#default#VML);} *{font-size:12px;} </STYLE> <style type="text/css"> <!-- font { font-size: 14px; } td { font-size: 14px; color: #333333; } b { font-size: 14px; } span { font-size: 14px; } a:link { color: #333333; text-decoration: none; } a:hover { color: #990000; text-decoration: underline; } a:visited { color: #000000; text-decoration: none; } --> </style> </HEAD> <BODY topmargin="0" leftmargin="0" onLoad="begin()" bgcolor="#CCCCCC"> <p><br> <table width="100%" border="0" cellspacing="0" cellpadding="4"> <tr> <td align="center"><b>文件上传进度指示条</b></td> </tr> <tr> <td>状态:<span ID="myStatus"></span></td> </tr> <tr> <td width="500"><div style="table-Layout:fixed;width:100%;height:100%;border:1 solid black"><v:RoundRect id="myRect" style="height:20;" name="myRect"> <v:fill type="gradient" id="fill1" color="blue"/> </v:RoundRect></div></td> </tr> <tr> <td>已经上传:<span ID="message"></span></td> </tr> <tr> <td>使用时间:<span ID="time">0</span> 秒 </td> </tr> <tr> <td>平均速率:<span ID="speed">0</span> KB/秒 </td> </tr> </table> <script language="Javascript"> self.moveTo(getTop(200),getLeft(500)); var intBytesTransferred=0; var intTotalBytes=0; var useTime=1; //s var getData; var myWidth=486; var beginUploadFlg=false; fill1.color="rgb("+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+")"; myStatus.innerHTML="正在初始化...."; function begin() { message.innerHTML="开始获取信息...."; var Doc = new ActiveXObject('Microsoft.XMLDOM'); Doc.async = false; Doc.load("fileUpProgressRead.asp?progressID=<%=Request.QueryString("progressID")%>&aa="+new Date().getTime()); if(Doc.parseError.errorCode != 0) //检查获取数据时是否发生错误 { delete(Doc); if(beginUploadFlg){ intBytesTransferred=intTotalBytes; }else{ message.innerHTML="上传动作尚未启动!"; } }else{ var rootNode=Doc.documentElement; if(rootNode.childNodes != null) { beginUploadFlg=true; intBytesTransferred=Number(rootNode.childNodes.item(0).childNodes.item(0).text); intTotalBytes=Number(rootNode.childNodes.item(0).childNodes.item(1).text); useTime=Number(rootNode.childNodes.item(0).childNodes.item(2).text); message.innerHTML="获取信息成功。"; } delete(rootNode); } delete(Doc); if(intTotalBytes==0){ intBytesTransferred=1; intTotalBytes=100; } display(); if(intTotalBytes>0 && intBytesTransferred<intTotalBytes){ if(beginUploadFlg){ myStatus.innerHTML="正在上传,请耐心等待...."; } time.innerHTML=useTime; speed.innerHTML=Math.round((intBytesTransferred/useTime)/1024); getData = setTimeout("begin()",1000); }else{ myStatus.innerHTML="数据上传完毕,3秒后自动关闭。"; setTimeout("self.close()",3000); } } function display(){ myRect.style.width=Math.round(myWidth/(intTotalBytes/intBytesTransferred)); fill1.angle=Math.round(300/(intTotalBytes/intBytesTransferred)); if(beginUploadFlg){ message.innerText=intBytesTransferred+"/"+intTotalBytes+","+Math.round(100/(intTotalBytes/intBytesTransferred))+"%"; } } function getTop(windowHeight){ var top = parseInt((screen.height - windowHeight)/2-15); return top; } function getLeft(windowWidth){ var left = parseInt((screen.width - windowWidth)/2-5); return left; } </script> </BODY> </HTML>