js 10秒钟倒计时

第一个:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>counter</title>
<script language="javascript" type="text/JavaScript">
function Counter(nMax,nInterval)
{
this.maxTime=nMax;
this.interval=nInterval;
this.objId="timer";
this.obj=null;
this.num=this.maxTime;
this.timer=null;
this.start=function()
{
this.obj=document.getElementById(this.objId);
if(this.num>0) setTimeout(this.run,this.interval*1000);
};
this.run=function()
{
if(myCounter.num>0)
{
myCounter.num--;
myCounter.obj.innerHTML=myCounter.num;
myCounter.timer=setTimeout(myCounter.run,myCounter.interval*1000);
}
else clearTimeout(myCounter.timer);
};
this.show=function()
{
document.write("<span id="+this.objId+">"+this.num+"</span>");
this.obj=document.getElementById(this.objId);
//alert(this.obj.innerHTML);
}
}
</script>
</head>
 
<body onload="myCounter.start();">
 
<script language="JavaScript" type="text/JavaScript">
var myCounter=new Counter(10,1);
</script>
 
<p>现在剩下
<script language="JavaScript" type="text/JavaScript">
myCounter.show();
</script>
秒钟!</p>

 第二个:很中庸的倒计时,我用的这个

请等待<span id="dd">10</span>秒
<script type="text/javascript">
function run(){
    var s = document.getElementById("dd");
    if(s.innerHTML == 0){
        window.location.href='www.baidu.com';
        return false;
    }
    s.innerHTML = s.innerHTML * 1 - 1;
}
window.setInterval("run();", 1000);
</script>

 第三个:毫秒级的,比较紧张:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <script type="text/javascript">
    <!--
    var duration=9900;
    var endTime = new Date().getTime() + duration + 100;
    function interval()
    {
        var n=(endTime-new Date().getTime())/1000;
        if(n<0) return;
        document.getElementById("timeout").innerHTML = n.toFixed(3);
        setTimeout(interval, 10);
    }
    window.onload=function()
    {
        setTimeout("window.location.href='http://www.baidu.com'", duration);
        interval();
    }
    //-->
    </script>
<head runat="server">
    <title>等待10秒</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
             现在剩下 <span id="timeout">10.000</span> 秒后 将自动跳转        </div>
    </form>
</body>
</html>
原文地址:https://www.cnblogs.com/jthb/p/4674274.html