代码
<!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">
<head>
    
<title>无标题页</title>

    
    
<script language="javascript" type="text/javascript">
    
     function countdown() 
     {
            var zero 
= ["000","00","0",""];//差位补零
            var p 
= 100;
            var div 
= document.getElementById("div");
            var inter 
= setInterval(function() {
                
if (p == 0) {
                    window.clearInterval(inter);
                }
                div.innerHTML 
= "还有" + zero[("" + p).length] + p + "";
                p
--;
            }, 
1000);
     }

    
var nMS = 100;
function GetRTime()
{
   

    
if (nMS<10) nMS = "00"+ nMS;
    
else if (nMS<100) nMS = "0"+ nMS;
    document.getElementById(
"RemainS").innerHTML = nMS;
    
if(nMS==0) window.location.href = "2.html";
    
else {
        nMS 
-= 1;
        setTimeout(
"GetRTime()",1000);
    }
}
window.onload
=countdown;


</script>


</head>

<body onload="countdown();">
<div id="CountMsg">还有 <strong id="RemainS"></strong></div>
<div id="div"></div>
</body>
</html>

 

 

setTimeout 和 setInterval 的区别

Posted on 2008-02-18 21:48 小y 阅读(1709) 评论(0) 编辑 收藏 所属分类: [05] Html&CSS&Js相关

setTimeout (表达式,延时时间)
setInterval(表达式,交互时间)
延时时间/交互时间是以豪秒为单位的(1000ms=1s)

setTimeout   在执行时,是在载入后延迟指定时间后,去执行一次表达式,仅执行一次
setInterval 在执行时,它从载入后,每隔指定的时间就执行一次表达式

set Timeout 也可以实现象setInterval一样的功能
set Timeout:
<script language="javascript">
var i;
i=0;
function reloop()
{
i=i+1;
alert(String(i));
setTimeout("reloop()",1000);
}
reloop();
</script>

setInterval:
<script language="javascript">
var i;
i=0;
function reloop()
{
i=i+1;
alert(String(i));
}
setInterval("reloop()",1000);
</script>

window对象有两个主要的定时方法,分别是setTimeout 和 setInteval     他们的语法基本上相同,但是完成的功能取有区别。

  setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。

  setInterval方法则是表示间隔一定时间反复执行某操作。

  如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行。如果要清除计数器需要 根据使用的方法不同,调用不同的清除方法:

例如:tttt=setTimeout(@#northsnow()@#,1000);

clearTimeout(tttt);

或者:

tttt=setInterval(@#northsnow()@#,1000);

clearInteval(tttt);

举一个例子:

<div id="liujincai"></div>
<input type="button" name="start" value="start" onclick=@#startShow();@#>
<input type="button" name="stop" value="stop" onclick="stop();">
<script language="javascript">
      var intvalue=1;
      var timer2=null;
      function startShow()
      {
         liujincai.innerHTML=liujincai.innerHTML + "&nbsp;" + (intvalue ++).toString();
         timer2=window.setTimeout("startShow()",2000);
      }
      function stop()
      {
         window.clearTimeout(timer2);
      }
</script>

 

posted on 2010-12-02 15:18  poop  阅读(360)  评论(0编辑  收藏  举报