gpt4 book ai didi

javascript - 带有 Javascript 函数的倒计时参数

转载 作者:行者123 更新时间:2023-12-02 14:08:17 25 4
gpt4 key购买 nike

我想创建一个js函数,它从参数s开始倒数到0。并将其显示在 <p>使用 id = count ,该函数从 onclick="countdown(60)" 开始来自 Button ,但不知何故它不起作用。有人知道为什么吗?感谢您的帮助。

var count ;
function countdown(s){
count = s ;
while (s > 0) {
document.getElementById("count").innerText = count ;
setTimeout(tick(), 1000) ;
}
document.getElementById("count").innerText = "ready" ;

}
function tick (){
count -- ;
}

最佳答案

几点:

  • 您的 while 循环将立即堆叠 setInterval 调用,因此它们将在 1 秒后全部触发。

  • 调用setTimeout(tick()..将立即执行tick函数

请参阅以下替代方案:

var countdown = function(s){

var c = document.getElementById("count");

var tick = function(){
c.innerText = s;
};

var ready = function(){
clearInterval(i);
c.innerText = "ready";
};

tick();

var i = setInterval(function(){
(s>0) ? function(){ s--;tick(); }() : ready();
}, 1000);


}

countdown(10);
<div id="count"></div>

关于javascript - 带有 Javascript 函数的倒计时参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39867876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com