javascript - 创建 php/javascript 倒计时器时卡住了

标签 javascript php timer setinterval

有一段时间我一直在努力解决这个问题。

我正在尝试创建一个倒计时器。最终我希望它从早上 8 点开始每 5 小时重置一次。但现在我不知道我是否正确设置了小时、分钟和秒以正确地一起倒计时。

这是我到目前为止的代码:

<?php
    $timeTo  = strtotime('08:00:00').'<br />';
                $timeNow = strtotime('now').'<br />';
                $differenceInSeconds = $timeTo - $timeNow;
            ?>
            <script type="text/javascript">
                var s= "<?php Print($differenceInSeconds);?>";
                var h= Math.floor(s/3600);
                s-= h*3600;
                var m= Math.floor(s/60);
                s -= m*60;
                var counter=setInterval(timer, 1000); //1000 will  run it every 1 second
                    function timer()
                    {

                      s=s-1;
                      if(h >= 0 && m >= 0 && s <= -1){
                        m=m-1;
                        s=59;
                        if(h>= 0 && m < 0 && s <= -1){
                            h=h-1;
                            m=59;
                            s=59;
                              if (s <= -1)
                              {

                                 //counter ended, reset counter


                                 return;
                              }
                          }
                        }
                        //Do code for showing the number of seconds here
                          document.getElementById("timer").innerHTML=(h <= 0 ? ' ' : h+"hr ")+(m <= 0 ? ' ' : m+"min ")+(s < 10 ? '0'+s : s+"secs "); // watch for spelling
                    }
            </script>

我是不是找错树了?我对 times 和 javascript 很陌生,所以发现它很困难。

最佳答案

我不会回答这个问题。我会尽力引导您找到答案。

  1. 请注意s <= -1逻辑上相当于 s < 0 。对此并不存在混淆。使用第二个,看起来更干净。
  2. s=59;在下一行中,到底会怎样 if(h>= 0 && m < 0 && s <= -1 )曾经评估过 true

还存在类似的其他逻辑错误。花一些时间解决这个问题。如果您自己解决这个问题,那么您离成为一名优秀的程序员又近了一步。

快乐编码...:)

关于javascript - 创建 php/javascript 倒计时器时卡住了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20444854/

相关文章:

javascript - 获取点击tr的td类?

javascript - 从容器页面控制框架

PHP MySQL 将多个复选框中的值插入到表中的一列中

php - JQuery:从数据库加载数据并将其插入以选择

flash - ActionScript 3 如何跟踪耗时?

asp.net-mvc-4 - 如何在 MVC 4 中每 3 秒刷新一次局部 View ?

javascript - 根据场景动态生成AJAX请求

php - 如何将 1300 条 CSV 记录输入到 Web 表单中?

php - 如何提高简单的mysql查询速度

c# - 通过Timer组件以动画方式绘制sin(x)/x到PictureBox