在javascript中,如果您将一个变量设置为时间间隔并清除它,是否有办法将其重新打开?谢谢。如果您需要代码,请询问。我已经尝试过仅输入间隔名称,但这会返回一个数字。我也尝试过将其作为一个函数,该函数会返回错误。
var on = false;
var time = 0
function toggle() {
if (on === false) {
start()
on = true
} else {
stop()
on = false
}
}
function start() {
var interval = window.setInterval(function() {
add()
}, 1000)
console.log('1')
}
function stop() {
clearInterval(interval);
console.log('2')
}
function add() {
time = time + 1;
document.getElementById('time').innerHTML = time;
}
<div id='time'></div>
<button onClick="toggle()">Toggle</button>
答案 0 :(得分:0)
将启动 setInterval 的代码移动到函数中。
清除间隔,然后再次调用该函数。
清除间隔后就无法重新启动它。
答案 1 :(得分:0)
我认为您无需清除并重新设置间隔。
这种方法怎么样:
var start = document.getElementById('start')
var stop = document.getElementById('stop')
var time = document.getElementById('time')
var isRunning = false
start.onclick = function() {
isRunning = true
}
stop.onclick = function() {
isRunning = false
}
function func() {
if (isRunning) {
time.innerHTML = +time.innerHTML + 1
}
}
setInterval(func, 1000)
<button id="start">start</button>
<button id="stop">stop</button>
<div id="time">0</div>