Javascript setTimeinterval内的Jquery setTimeout不工作
我有一个从右向左移动推土机的设定间隔 在下面的JSFIDLE中,setInterval必须在5秒后自行停止。(使用了settimeout和clearinterval)但它不起作用。有人能帮我吗Javascript setTimeinterval内的Jquery setTimeout不工作,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个从右向左移动推土机的设定间隔 在下面的JSFIDLE中,setInterval必须在5秒后自行停止。(使用了settimeout和clearinterval)但它不起作用。有人能帮我吗 var gameover; gameover = setInterval(function () { setTimeout(function () { clearInterval(movingbulldozer); }, 55000); }, 10); 在您的示例中,
var gameover;
gameover = setInterval(function () {
setTimeout(function () {
clearInterval(movingbulldozer);
}, 55000);
}, 10);
在您的示例中,Moving推土机未定义。如果要清除间隔,请使用正确的引用清除间隔。在您的示例中,这将是clearInterval(gameover) 您的示例的问题是,每10毫秒您就要向DOM添加一个超时,以清除间隔
var timeout, interval, date,
i = 0;
$(document).ready(function() {
interval = setInterval(function() {
date = new Date();
i++;
$('#debug').html('Interval parsed at '+date.getTime()+', interval #'+i);
if (i >= 100) { // According to your example
$('#debug').html('Starting timeout...');
timeout = setTimeout(function() {
$('#debug').html('Timed out');
}, 5000);
clearInterval(interval);
}
}, 10);
});
查看我的示例,看看是否有帮助。:)
您的小提琴中有一个输入错误,,如果可以的话,但不是5000毫秒,而是设置了55000毫秒的超时时间
setTimeout(function () {
clearInterval(movingbulldozer);
}, 5000);
它工作得很好,您的小提琴在setTimeOut中有55000个,首先,它停止JSFIDLE包含55秒超时。它会在55秒后按预期停止。你为什么要在间隔时间这样做?每10毫秒添加一次延迟函数执行@发生时的密码泄露:P