我为圣诞节感到非常兴奋,以至于我决定用哪种更好的倒计时方法来创建圣诞节倒数计时器。但是我的倒计时似乎不起作用。
let targetDate = new Date(null, 11, 31, 0, 0, 0, 0)
let today = new Date()
targetDate.setFullYear(today.getFullYear())
if (targetDate.getTime() - today.getTime() <= 0) {
targetDate.setFullYear(today.getFullYear() + 1)
}
let timer = setInterval(() => {
today = new Date()
e = document.getElementById("countdown")
if (targetDate.getTime() - today.getTime() == 0) {
e.innerHTML = "Horray! Merry Christmas, Everyone! Horray!"
clearInterval(timer)
} else {
distance = targetDate.getTime() - today.getTime()
days = Math.floor(distance / (24 * 60 * 60 * 1000))
distance -= day * 24 * 60 * 60 * 1000
hours = Math.floor(distance / (60 * 60 * 1000))
distance -= hours * 60 * 60 * 1000
minutes = Math.floor(distance / (60 * 1000))
distance -= minutes * 60 * 1000
seconds = Math.floor(distance / 1000)
e.innerHTML = days + " d " hours + " h " + minutes + " m " + seconds + " s "
}
}, 1000)
我尝试过控制台记录计时器值,但未呈现代码。看来innerHTML代码没有运行。
查看此行
e.innerHTML = days + " d " hours + " h " + mi
应该是
e.innerHTML = days + " d " + hours + " h " + mi
我发现了问题。我拼错了每一天,忘记了加号。