当前位置:编程学习 > JS >>

下载记时器网页版

基于网页的网络文件下载计时器,可以计算软件的下载时间。代码比较麻烦,可以定义不同的网速计算时所需要的基准数据,运用的数组的一些知识。
答案:<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>下载记时器</title>
<script LANGUAGE="JavaScript">
<!-- Begin
function MakeArray(n) {			//创建数组
this.length = n;			//定义数组长度
for (var i = 1; i <= n; i++) { 		//给每个元素赋初值
this[i] = 0
}
return this				//返回创建好的数组
}
speedVar = new MakeArray(7);		//这里定义不同的网速计算时所需要的基准数据。
speedVar[1] = "1.1719"			//9.6k
speedVar[2] = "1.7578"			//14.4k
speedVar[3] = "3.5156"			//28.8k
speedVar[4] = "4.1016"			//33.6k
speedVar[5] = "6.8359"			//56k
speedVar[6] = "7.8125"			//64k
speedVar[7] = "16.6250"			//128k
function compute(form, mult){
for (i=1; i < 8; i++){
if (form.size.value==null||form.size.value.length==0){	//如果大小栏没有填入文字
form.size.value=0;				//则设定文件大小为0
}
if (form[i+"hour"].value==null||form[i+"hour"].value.length==0){	//如果当前行的“小时”为空
form[i+"hour"].value=0;		//则补填进“0”
}       
if (form[i+"minute"].value==null||form[i+"minute"].value.length==0){	//如果当前行的“分”为空
form[i+"minute"].value=0;				//则补填进“0”
}
if (form[i+"second"].value==null||form[i+"second"].value.length==0){	//如果当前行的“秒”为空
form[i+"second"].value=0;		//则补填进“0”
}
if (mult != 0 && form.size.value != 0){		//如果文件大小不为0
with (Math){				//默认对象改为Math以便于接下来的数学计算
var speed = speedVar[i];			//取当前行对应的速度基值
var TotalTime = ((form.size.value*mult)/speed);	//需要的总时间(秒)
var TotalHours = floor((TotalTime/3600));	//所需的小时数
var TotalHoursMod = (TotalTime%3600);	//除去小时后的余数
var TotalMin = floor(TotalHoursMod/60);	//所需时间除去小时后剩下的分钟数
var TotalMinMod = (TotalHoursMod%60);	//除去分钟后的余数(也就是秒数)
var TotalSec = floor(TotalMinMod);		//所需时间除去小时及分钟后剩下的秒数
form[i+"hour"].value=TotalHours;		//将“小时”写入对应的表格
form[i+"minute"].value=TotalMin;		//将“分”写入对应的表格
form[i+"second"].value=TotalSec;		//将“秒”写入对应的表格
      }
   }
}
return;
}
// End -->
</script>
<meta name="description" content="下载记时器,可以计算软件的下载时间。">
</head>
<body>
<br>
<form METHOD="POST" name="s"> 
 <table BORDER="1" bordercolorlight="#000000" bordercolor="#FFFFFF" bgcolor="#C0C0C0"> 
  <tr> 
   <td>文件大小 
    <input TYPE="TEXT" NAME="size" SIZE="10"> 
    <input TYPE="BUTTON" OnClick="compute(this.form, 1)" VALUE="KB" style="font-family: Arial; border: 1 solid #000000"> 
    <input TYPE="BUTTON" OnClick="compute(this.form, 1024)" VALUE="MB" style="font-family: Arial; border: 1 solid #000000"> 
   </td> 
<script language="JavaScript"> 
<!-- 
document.s.size.focus(); 
 // --> 
</script> 
   <td colspan="3"> 
    <div align="center"> 
     <center> 
      需要下载时间(理想值)  
     </center> 
    </div> 
   </td> 
  </tr> 
  <tr align="center">  
   <td>调制解调器速率...</td> 
   <td>小时</td> 
   <td>分钟</td> 
   <td>秒</td> 
  </tr> 
  <tr align="center">  
   <td>9.6 Kb</td>   
   <td>   
    <input NAME="1hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="1minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="1second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">    
   <td>14.4 Kb</td>   
   <td>   
    <input TYPE="TEXT" NAME="2hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="2minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="2second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">    
   <td>28.8 Kb</td>   
   <td>   
    <input TYPE="TEXT" NAME="3hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="3minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="3second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">   
   <td>33.6K</td>   
   <td>   
    <input type="TEXT" name="4hour" size="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input type="TEXT" name="4minute" size="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input type="TEXT" name="4second" size="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">    
   <td>56 Kb</td>   
   <td>   
    <input TYPE="TEXT" NAME="5hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="5minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="5second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">    
   <td>ISDN (64 Kb)</td>   
   <td>   
    <input TYPE="TEXT" NAME="6hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="6minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="6second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
  <tr align="center">    
   <td>ISDN (128 Kb)</td>   
   <td>   
    <input TYPE="TEXT" NAME="7hour" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="7minute" SIZE="6" style="border: 1 solid #000000">   
   </td>   
   <td>   
    <input TYPE="TEXT" NAME="7second" SIZE="6" style="border: 1 solid #000000">   
   </td>   
  </tr>   
 </table>   
</form>   
</body>   
</html>   

上一个:JS演示字符串的加密与解密
下一个:高效的JavaScript数组顺序打乱方法

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,