0

我需要在setTimeout用 a 停止它后重新启动 a clearTimeout ,代码如下:

function start(){timeout = setTimeout(function(){...}, 1000}
function increment(){interval();}
function stop(){clearTimeout(timeout)}

更好的解释: function start()对于另一个调用函数的超时时间为 1000 毫秒start()function increment()只需每 1000 秒为一个值添加 +1,但这与问题无关。最后一function stop()setTimeoutfunction start()。我只需要停止1000 毫秒setTimeoutstart()然后让它继续工作。

4

1 回答 1

0

好的....我“避免”了这个问题....我需要将 setTimeout 停止 1000 毫秒,然后让它正常工作...我尝试过...而不是暂停 setTimeout 我放了另一个时间变量。

 var time = 1000;
    var timecache = 1000;
    fatica = 3000;
    sudore = 3000;
    function interval() { timeout = setTimeout(increment, time);} //here setTimeout uses var time//
    function increment(){console.log(time);point += 1;document.getElementById("pul").value = point;interval();}
    function fermafatica() {time = timecache;setInterval(ferma, fatica);} //here the function equals time to timecache so vas time is always 1000ms//
    function ferma(){time = 10000; setTimeout(fermafatica, sudore);} // then here I transformed the time in 10000 so the first function will take 10000 instead of 1000 in setTimeout//
//plus i put a setTimeout to recall function fermafatica() that reset the time to 1000//

这就是我想要的...我避免了这个问题并找到了另一种方法来做到这一点...但它有效...无论如何谢谢

于 2016-06-21T16:48:53.353 回答