初学者需要帮助!倒计时计时器不工作

x7rlezfr  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(543)

我刚开始学习如何用html创建网站,我需要创建一个计时器。计时器正在显示,但数字不显示,也不工作。
我会感谢你们的帮助:)下面是html和css

<script type="text/javascript">

var countDownDate = new Date("July 21, 2021 09:00:00").getTime();
var x = setInterval(function(){
  var now = new Date().getTime();
  var distance = countDownDate - now;

  var days = Math.floor(distance / (1000 * 60 * 60 * 24));
  var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distancr % (1000 * 60)) / (1000));

    document.getElementById("day").innerHTML = days;
    document.getElementById("hour").innerHTML = hours;
    document.getElementById("minute").innerHTML = minutes;
    document.getElementById("second").innerHTML = seconds;
});
</script>
z31licg0

z31licg01#

window.setInterval 在要执行的函数之后,接受第二个参数,即每次执行之间的毫秒数。另外,正如柯克·比尔德在评论中指出的,你拼错了 distance 在归因于 seconds 变量
因此:

<script type="text/javascript">

var countDownDate = new Date("July 21, 2021 09:00:00").getTime();
var x = setInterval(function(){
  var now = new Date().getTime();
  var distance = countDownDate - now;

  var days = Math.floor(distance / (1000 * 60 * 60 * 24));
  var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / (1000));

    document.getElementById("day").innerHTML = days;
    document.getElementById("hour").innerHTML = hours;
    document.getElementById("minute").innerHTML = minutes;
    document.getElementById("second").innerHTML = seconds;
}, 1000); // 1000 ms = 1 second
</script>

我还没有检查其余的代码,寻找其他可能的bug,但我认为这是解决您问题的方法

相关问题