我想在Javascript中建立一个非常简单的计时器(基于来自HTML表单的输入),并且我的clearTimeout不工作 - 甚至没有打到我有的console.log 。在我的HTML中,为了调用clearTimeout,我只是有。我真的不知道为什么这不起作用 - 任何帮助将不胜感激!谢谢!clearTimeout()不停止setTimeout
function settimer(){
hour = document.getElementById('h').value;
minute = document.getElementById('m').value;
sec = document.getElementById('s').value;
hour = hour * 3600000;
minute = minute * 60000;
sec = sec * 1000;
totalTime = hour+minute+sec;
var timer = setTimeout(function(){alert("Time's up"); }, totalTime);
}
function clear(){
console.log("stopped")
clearTimeout(timer);
}
'var timer'只存在于'settimer()'内部。它需要在函数之外声明,以便它们都可以访问它。 –