首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置超时和ClearTimeout

设置超时和ClearTimeout
EN

Stack Overflow用户
提问于 2016-06-22 00:12:19
回答 1查看 248关注 0票数 0

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

代码语言:javascript
复制
function start(){timeout = setTimeout(function(){...}, 1000}
function increment(){interval();}
function stop(){clearTimeout(timeout)}

更好地解释:对于调用start()的另一个函数,function start()是1000ms的超时。function increment()每隔1000秒就给一个值加上+1,但这与问题无关。最后一个function stop()停止function start()中的setTimeout。我需要在start()中停止setTimeout 1000ms,然后让它继续工作。

EN

回答 1

Stack Overflow用户

发布于 2016-06-22 00:48:53

好的..。我“避免”这个问题……我需要停止setTimeout 1000ms,然后让它正常工作…我试过了,所以...我没有暂停setTimeout,而是添加了另一个时间变量。

代码语言:javascript
复制
 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//

这就是我想要的。我避免了这个问题,并找到了另一种方法来做到这一点…但它确实有效..。不管怎么都要谢谢您

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37949522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档