这段代码是在网上找到的,它的单位是以秒计算的,大家能否帮忙改成以毫秒计算的??? 
毫秒就是10-1的倒数, 每倒数一组,秒就跳一下。
类似于 http://www.yeepai.com/ 。
  <div>
    <%
    //要比较的数据库中的时间
    DateTime dt = DateTime.Parse("2011-08-05 15:26:35");
    long ms = (long)dt.Subtract(DateTime.Now).TotalSeconds;
     %>
    <script type="text/javascript">
var allSeconds=<%=ms %>;function count(){
    if(allSeconds<=0){
      
           document.getElementById("pai").disabled="disabled";
   }
    setTimeout("count()",1000);
    document.getElementById("lefttime").innerHTML=getLeftTimeString(allSeconds);
    allSeconds--;
}function getLeftTimeString(ms){
    if(ms<=0) return "竞拍已经结束";
    var rr="剩余";
    if(ms>=86400){
        rr=rr+String(Math.floor(ms/86400))+"天";
        ms=ms%86400;
    }
    if(ms>=3600){
        rr=rr+String(Math.floor(ms/3600))+"小时";
        ms=ms%3600;
    }    if(ms>=60){
        rr=rr+String(Math.floor(ms/60))+"分钟";
        ms=ms%60;
    }
    rr=rr+String(ms)+"秒";
    return rr;
}
    </script>
    <div>
        <input id="pai" type="button" value="竞拍"/>
        <span id="lefttime"></span>
        <script type="text/javascript">
            count();
        </script>
    </div>
    </div>

解决方案 »

  1.   

    <div> <% //要比较的数据库中的时间 DateTime dt = DateTime.Parse("2011-08-05 15:26:35"); long ms = (long)dt.Subtract(DateTime.Now).TotalSeconds; %> <script type="text/javascript"> var allSeconds=<%=ms %>; function count(){ if(allSeconds<=0){ document.getElementById("pai").disabled="disabled"; } setTimeout("count()",1); document.getElementById("lefttime").innerHTML=getLeftTimeString(allSeconds); allSeconds--; } function getLeftTimeString(ms){ if(ms<=0) return "竞拍已经结束"; var rr="剩余"; if(ms>=86400){ rr=rr+String(Math.floor(ms/86400))+"天"; ms=ms%86400; } if(ms>=3600){ rr=rr+String(Math.floor(ms/3600))+"小时"; ms=ms%3600; } if(ms>=60){ rr=rr+String(Math.floor(ms/60))+"分钟"; ms=ms%60; } rr=rr+String(ms)+"秒"; return rr; } </script> <div> <input id="pai" type="button" value="竞拍"/> <span id="lefttime"></span> <script type="text/javascript"> count(); </script> </div> </div> 
      

  2.   

    - - 不会用编译器  反正这个函数改一点就可以了function count(){
        if(allSeconds<=0){
          
               document.getElementById("pai").disabled="disabled";
       }
        setTimeout("count()",1);
        document.getElementById("lefttime").innerHTML=getLeftTimeString(allSeconds);
        allSeconds--;
    }
      

  3.   


      <div>
      
        <script type="text/javascript">
    var allSeconds=100000;function count(){
        if(allSeconds<=0){
          
               document.getElementById("pai").disabled="disabled";
       }
        setTimeout("count()",100);
        document.getElementById("lefttime").innerHTML=getLeftTimeString(allSeconds);
        allSeconds=allSeconds-100;
    }function getLeftTimeString(ms){
        if(ms<=0) return "竞拍已经结束";
        var rr="剩余";
        if(ms>=86400000){
            rr=rr+String(Math.floor(ms/86400000))+"天";
            ms=ms%86400000;
        }
        if(ms>=3600000){
            rr=rr+String(Math.floor(ms/3600000))+"小时";
            ms=ms%3600000;
        }    if(ms>=60000){
            rr=rr+String(Math.floor(ms/60000))+"分钟";
            ms=ms%60000;
         if(ms>=1000) 
         {
          rr=rr+String(Math.floor(ms/1000))+"秒";
            ms=ms%1000;
         }  
        }
        rr=rr+String(ms/100)+"毫秒[这个单位应该是毫秒*100]";
        return rr;
    }
        </script>
        <div>
            <input id="pai" type="button" value="竞拍"/>
            <span id="lefttime"></span>
            <script type="text/javascript">
                count();
            </script>
        </div>
        </div>
      

  4.   

    还有就是,我只是想实现这种效果,你有好的办法吗? http://www.yeepai.com/
      

  5.   

    这样呢?  <div>
        <%
        //要比较的数据库中的时间
        DateTime dt = DateTime.Parse("2011-08-05 15:26:35");
        long ms = (long)dt.Subtract(DateTime.Now).TotalSeconds;
         %>
        <script type="text/javascript">
    var allSeconds=<%=ms %>;//这里是秒即可
    function count(){

      document.getElementById("lefttime").innerHTML=getLeftTimeString(allSeconds*1000);
       if(allSeconds<=0){
               document.getElementById("pai").disabled="disabled";
               
               return;
       }
        setTimeout("count()",100);
        allSeconds=allSeconds-0.1;
    }function getLeftTimeString(ms){
        if(ms<=0) return "竞拍已经结束";
        var rr="剩余";
        if(ms>=86400000){
            rr=rr+String(Math.floor(ms/86400000))+"天";
            ms=ms%86400000;
        }else
        {
          rr=rr+"<font size='6'>00天</font> ";
        }
        if(ms>=3600000){
            rr=rr+"<font size='6'>"+String(Math.floor(ms/3600000))+":</font>";
            ms=ms%3600000;
        }else
        {
          rr=rr+"<font size='6'>00:</font>";
        }    if(ms>=60000){
            rr=rr+"<font size='6'>"+String(Math.floor(ms/60000))+":</font>";
            ms=ms%60000;
        }else
        {
          rr=rr+"<font size='6'>00:</font>";
        }
        
         if(ms>=1000) 
         {
          rr=rr+"<font size='6'>"+String(Math.floor(ms/1000))+"</font>";
            ms=ms%1000;
         }  else
        {
          rr=rr+"<font size='6'>00</font>";
        }
        rr=rr+"<font size='3'>"+String(Math.floor(ms/100))+"</font>";
        return rr;
    }
        </script>
        <div>
            <input id="pai" type="button" value="竞拍"/>
            <span id="lefttime"></span>
            <script type="text/javascript">
                count();
            </script>
        </div>
        </div>
      

  6.   

    多个就封装下。你这个比较乱。给你重写下:<!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" xml:lang="ru">
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <script type="text/javascript">
    //var allSeconds = 1000;//秒
    /*
    *timeid:要显示的位置
    *paiid:竞拍的id
    *allSeconds:剩余的秒数
    */
    function count(id,paiid,allSeconds)
    {
    document.getElementById(id).innerHTML=getLeftTimeString(allSeconds*1000);
        if(allSeconds<=0){
               document.getElementById(paiid).disabled="disabled";
               return;
        }
            allSeconds=allSeconds-0.1;
            setTimeout(function(){count(id,paiid,allSeconds)},100);
    }
    function getLeftTimeString(ms)
    {
       var days = ms>=86400000?Math.floor(ms/86400000):0;
       ms = ms%86400000;
       var hours = ms>=3600000?Math.floor(ms/3600000):0;
       ms = ms%3600000;
       var minutes = ms>=60000?Math.floor(ms/60000):0;
       ms = ms%60000;
       var seconds = ms>=1000?Math.floor(ms/1000):0;
       ms = ms%1000;
       var ss = Math.floor(ms/100);
       
       return '<font size="5">'+format(days)+'天 '+format(hours)+':'+format(minutes)+':'+format(seconds)+'</font><font size="3">'+ss+'</font>';
    }

    function format(str)
    {
      return (str.toString().length==1?"0":"")+str.toString();
    }
    </script>
    </head>
    <body>
    <input id="pai1" type="button" value="竞拍"/>
            <span id="lefttime1"></span>
            <br />
            <input id="pai2" type="button" value="竞拍"/>
            <span id="lefttime2"></span>
            <br />
            <input id="pai3" type="button" value="竞拍"/>
            <span id="lefttime3"></span>
            <script type="text/javascript">
             //这里从数据库取出时间即可
                count("lefttime1","pai1" ,100);
                count("lefttime2","pai2" ,203);
                count("lefttime3","pai3" ,1400);
            </script>
    </body>
    </html>
      

  7.   


    谢谢你,我想在问下这个函数 Math.floor()  怎么当小雨10秒的时候显示08,07,06.... 而不是8,7,6....
      

  8.   

    你MSN或QQ能否告知下,以后遇到客户端相关问题可以请教你。
      

  9.   


    小于10 的已经写好了。
    function format(str)
        {
          return (str.toString().length==1?"0":"")+str.toString();
        }我qq:250584838