在将问题标记为重复之前,我想说我已经完成了所有的秒表和 JavaScript 搜索,但由于我是 JavaScript 的新手,所以我自己无法找到可能的解决方案,我需要你们的帮助。
我想要实现的是使用相同的按钮启动和停止手表。我可以停止手表但不能重新开始,不知道为什么。
看看下面的脚本并纠正我。
var startTimer = setInterval(function(){myTimer()}, 1000);
function myTimer(){
var current = new Date();
document.getElementById("timer").innerHTML = current.toLocaleTimeString();
}
function start(st){
// Problem is in this statement
// How can I call the global function variable again that's startTimer
window[st]();
var elem = document.getElementById("myButton");
elem.innerHTML = "Stop";
elem.addEventListener("click", stop);
}
function stop(){
clearInterval(startTimer);
var elem = document.getElementById("myButton");
elem.innerHTML = "Start";
elem.addEventListener("click", start(startTimer));
}Run Code Online (Sandbox Code Playgroud)
<p id="timer"></p>
<button id="myButton" onclick="stop(startTimer)">Stop</button>Run Code Online (Sandbox Code Playgroud)