点击停止倒计时

时间:2013-06-19 20:54:32

标签: javascript onclick countdown

我希望我的倒计时停止点击提交按钮,我搜索了一些页面, 但我没有找到任何东西。 这是我想要点击

的代码

function countDown (count) {
  if (count > 0) {
   var d = document.getElementById("countDiv");
   d.innerHTML = count;
   setTimeout (function() { countDown(count-1); }, 1000);
   document.getElementById('tiempo').value = count;
  }
  else
   document.location = "timeover.php";
}
document.getElementById("palabra").focus();
countDown(5);
</script>

2 个答案:

答案 0 :(得分:0)

尝试这样的事情:

var stopped = false; 
function countDown (count) {
  if (count > 0) {
   var d = document.getElementById("countDiv");
   d.innerHTML = count;
   document.getElementById('tiempo').value = count;
   if (!stopped) { 
    setTimeout (function() { countDown(count-1); }, 1000);
   }
  }
  else
   document.location = "timeover.php";
}
document.getElementById("palabra").focus();
document.getElementById("mySubmitId").onclick = function () { 
  stopped = true;
};
countDown(5);

答案 1 :(得分:0)

你必须保存对超时的引用(实际上超时的返回值将是数字)并使用它来取消超时。

var timeout = window.setTimeout(function () {
    // do something
}, 1000);

// clear timeout
window.clearTimeout(timeout);

你可能有了这个主意。顺便说一句,您应该查看setInterval方法,因为在这种情况下它会更好。间隔将“打勾”,直到你取消它。