关于JS倒计时的问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

关于JS倒计时的问题

2016-03-11 14:09:08 1747 1

倒计时的秒数显示不正常。太慢。点解。。。

<!DOCTYPE html>
<html>
  
  <head>
    <meta charset="UTF-8">
  </head>
  
  <body>
      
    <h2>毫秒的倒计时</h2>
    <div id="timer2"></div>
    <script>
      var countdown = function(gid,time){
        try {
            if (time<=0) {
            } else {

                var ms = Math.floor(time%1000);
                var s = Math.floor(time/1000%60);
                var m = Math.floor(time/1000/60%60);
                var h =Math.floor(time/1000/60/60%24);

                h=h>9?h:'0'+h;
                m=m>9?m:'0'+m;
                s=s>9?s:'0'+s;
                ms=ms>9?ms:'0'+ms;
                if (parseInt(h)>0) {
                    var str = h+':'+m+':'+s;
                } else {
                    var str = m+':'+s+':'+ms;
                }
                document.getElementById('timer2').innerHTML = str;
                setTimeout(function(){
                    countdown(gid,time-1);
                },1);
            }
        } catch (e) {
            if (typeof(console) == 'object') {
                console.log(e);
            }
        }
    };
    setTimeout(function(){countdown('timer2',99999)},1);
  
    </script>
      
      </body>
</html>
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 18:59:10
    <!DOCTYPE html>
    <html>
      
      <head>
        <meta charset="UTF-8">
      </head>
      
      <body>
          
        <h2>毫秒的倒计时</h2>
        <div id="timer2"></div>
        <script>
          var countdown = function(gid,time,starttime){
            if (!starttime) starttime = Date.now();
            try {
                var _time = time + starttime - Date.now();
                if (_time<=0) {
                    document.getElementById('timer2').innerHTML = '00:00:00';
                } else {
                    var ms = Math.floor(_time%1000);
                    var s = Math.floor(_time/1000%60);
                    var m = Math.floor(_time/1000/60%60);
                    var h = Math.floor(_time/1000/60/60%24);
    
                    h=h>9?h:'0'+h;
                    m=m>9?m:'0'+m;
                    s=s>9?s:'0'+s;
                    ms=ms>9?ms:'0'+ms;
                    if (parseInt(h)>0) {
                        var str = h+':'+m+':'+s;
                    } else {
                        var str = m+':'+s+':'+ms;
                    }
                    document.getElementById('timer2').innerHTML = str;
                    
                    
                    setTimeout(function(){
                        countdown(gid, time, starttime);
                    },1);
                }
            } catch (e) {
                if (typeof(console) == 'object') {
                    console.log(e);
                }
            }
        };
        setTimeout(function(){countdown('timer2',99999)},1);
      
        </script>
          
          </body>
    </html>
    0 0
相关问答

3

回答

关于RDS和OSS的读取速度的问题

2019-02-13 14:18:01 646浏览量 回答数 3

1

回答

关于js的正则和PHP正则的问题

2016-07-07 10:09:47 1409浏览量 回答数 1

1

回答

js关于全局变量的问题!

2016-03-26 11:36:02 1518浏览量 回答数 1

1

回答

关于 按钮 点击倒计时的问题

2016-03-03 16:28:16 1615浏览量 回答数 1

1

回答

一个关于js执行顺序的问题

2016-02-26 17:43:29 1732浏览量 回答数 1

2

回答

关于DRDS的问题

2015-08-19 17:52:01 5776浏览量 回答数 2

1

回答

关于OSS和CDN的问题

2015-04-08 15:58:56 5614浏览量 回答数 1

2

回答

关于按量计费的问题

2014-09-22 21:40:29 4327浏览量 回答数 2

2

回答

关于备案关站的问题

2014-08-06 11:49:54 4058浏览量 回答数 2

4

回答

关于备案关站的问题

2013-08-06 12:44:38 5137浏览量 回答数 4
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载