【发布时间】:2020-09-10 13:23:06
【问题描述】:
我几乎不了解 jquery。我正在尝试倒计时,所以在搜索后我找到了下面的代码。
function startTimer(duration, display) {
var timer = duration, minutes, seconds;
setInterval(function () {
minutes = parseInt(timer / 60, 10)
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
if (--timer < 0) {
timer = duration;
}
}, 1000);
}
$('.start').on('click', function(){
var oneMinute = 60 * 1,
display = document.querySelector('#time');
startTimer(oneMinute, display);
})
但倒计时会在一分钟后重复。就像它在 03、02、01 时一样,它又从 59 开始。
如何阻止它?
我想在给定分钟后提醒消息并停止计时器。
【问题讨论】:
-
我不明白这个平台上的人们是如何整天试图用“我几乎没有任何知识”或“我是新手”作为没有真正努力的借口。我们不是来为你们修复“找到”的代码。如果你想使用这个代码,那么你应该努力尝试并理解它是如何工作的。 jQuery 有很好的文档,所以你可以去阅读这样的东西。
-
问题是
if (--timer < 0) { timer = duration; },只需放置alert("Time stopped");查看更改 -
@CBroe 我只知道基本的,比如 onclick,选择器。我没有使用这个平台让其他开发人员解决我的问题。我试着做
if(timer == -1){ return false; },因为我没有写这段代码,我变得更加困惑。您无法仅通过阅读那里的文字来表达他们的问题来判断某人是否正在努力。不过,谢谢您的意见。 -
如果您确实尝试过任何事情,请立即在您的问题中提及。 “你不能仅仅通过阅读那里的文字来表达那里的问题来判断某人是否正在努力。” - 这正是为什么你应该做更多的事情,而不是只是表达问题。
标签: javascript jquery countdown countdowntimer