如何重新运行(从0开始)setTimeOut()?如何重新运行setTimeOut()?
这就是我基于其他问题想:(它不工作)
var timer;
function talk() {
clearTimeout(timer);
$('#dialog').show();
timer = setTimeout(function(){
$('#dialog').hide();
}, 2000);
}
$("#dialog").hover(function() {
talk();
});
talk();
我怎样才能正确地取消的setTimeout的东西,然后再次运行呢?
你可以看到它不工作在这里:jsfiddle.net/yrBGm
可能重复http://stackoverflow.com/questions/8161489/how-to-rerun-settimeout –
@ Keith.Abramo:但是这就是*这个问题!所以,不是“可能的重复”,而是“某些重复”。:-) – ruakh
哪个p艺术不起作用?没有“重新运行”的概念,或者从0开始,并且已经排队的超时 - 你所能做的就是取消它,然后创建一个新的(不相关的)超时。通过'timer = setTimeout(...)'排队超时,您可以通过调用'clearTimeout(timer)'来取消它。你的代码似乎已经这样做了。 – nnnnnn