gpt4 book ai didi

javascript - setTimeout() 不等待

转载 作者:IT王子 更新时间:2023-10-29 03:21:38 25 4
gpt4 key购买 nike

<分区>

我正在尝试使用 Javascript 进行秒数倒计时。

这是我的 HTML

<div id="ban_container" class="error center">Please wait
<span id="ban_countdown" style="font-weight:bold">
45</span>
seconds before trying again
</div>

还有我的 JS:

<script type="text/javascript">
var seconds = <?php echo $user->getBlockExpiryRemaining(); ?>;

function countdown(element) {
var el = document.getElementById(element);

if (seconds === 0) {
document.getElementById("ban_container").innerHTML = "done";
return;
}
else {
el.innerHTML = seconds;
seconds--;
setTimeout(countdown(element), 1000);
}
}

countdown('ban_countdown');
</script>

但是由于某些原因,它没有等待超时时间,而是立即执行倒计时,这样当我刷新页面时它就立即显示“完成”。我知道它实际上被执行了多次,因为如果我执行 innerHTML += seconds + ""; 它会从 45 开始倒计时。为什么会绕过超时?

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