【发布时间】:2020-01-01 01:09:24
【问题描述】:
我正在尝试创建一个倒数计时器,每次按下<button> 时都会重置。我正在尝试在我的 timer(); 函数之前使用 clearTimeout 来重置倒计时,但它似乎也打破了计时器(在 9 时停止)。
$(document).ready(function() {
countdown = null;
function timer() {
var seconds = 10,
el = $(".seconds");
el.text(seconds);
countdown = window.setTimeout(function() {
seconds--;
el.text(seconds);
if (seconds > 0) {
setTimeout(countdown, 1000);
}
}, 1000);
}
$("button").click(function() {
clearTimeout(countdown);
timer();
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button>Start</button>
<button>Continue</button>
<div class="seconds"></div>
【问题讨论】:
-
setTimeout(timer, 1000);setTimeout需要调用一个函数,而不是一个数字。 -
这能回答你的问题吗? How to use setTimeout(), JavaScript
-
给你的按钮 id 并分开它
标签: jquery