SetInterval 60秒倒计时问题jQuery
SetInterval 60 second countdown issue jQuery
我试图在单击开始按钮后倒计时60秒,在0时我不想只是隐藏计数器,我希望它被重置。我遇到了两个问题:当我再次点击开始按钮时,它并没有重新开始。一旦我点击开始按钮开始倒计时,它就不会被禁用。当它倒计时时,当我按下开始按钮时,它会加速倒计时。感谢任何帮助,这里是代码:
function begin() {
$('#begin').prop('disabled');
myTimer = setInterval(function() {
$('#timing').html(timing);
if (timing === 0) {
alert('Too late! Try again');
clearInterval(myTimer);
$('#timing').hide();
}
timing--;
}, 1000);
}
您有几个问题:
- 您需要
.prop("disabled", true)
才能禁用该按钮 - 重新启动计时器时,需要重置
timing
变量 - 您需要在计时器结束时启用该按钮,以便再次按下
- 启动计时器时需要显示初始计数
代码:
var timing;
var myTimer;
function begin() {
timing = 60;
$('#timing').html(timing);
$('#begin').prop('disabled', true);
myTimer = setInterval(function() {
--timing;
$('#timing').html(timing);
if (timing === 0) {
alert('Too late! Try again');
clearInterval(myTimer);
$('#begin').prop('disabled', false);
}
}, 1000);
}
工作演示(间隔时间更短,因此倒计时更快):http://jsfiddle.net/jfriend00/xxs7t0gd/
相关文章:
- 带有slideUp/Down和clearQueue的jQuery问题
- html代码没有运行jquery问题
- 使用jquery问题将文本附加到文本区域
- 当变量中的.find()项有多个匹配项时,jQuery问题
- 由于jQuery问题,在实现Disqus插件时出现问题
- 在jquery问题中设置值
- 基本有类 jquery 问题
- 使用最接近查找文本输入的JQuery问题
- css上的Jquery问题
- 使用 jQuery 问题验证和提交表单
- 循环每个 jQuery 问题
- insertBefore() 一个 iframe jquery 问题
- Magento - 原型.js和jQuery问题 - 添加到购物车按钮
- 谷歌浏览器jQuery问题
- IE 中止插件脚本会导致现场出现 JQuery 问题
- 在 jquery 问题中加载更多选项
- Javascript - 使用 jQuery 问题选择选项
- 使用两个函数时出现 Jquery 问题
- jquery问题 - 它不会相应地改变它
- Jquery问题在Firefox和IE中,但不是Chrome