如何使 setTimeout 函数连续循环?
例如
setTimeout(function(){
$(".slide2").hide();
$(".slide").show();
setTimeout(function(){
$(".slide").hide();
$(".slide2").show();
}, 1000);
}, 1000);
如何使 setTimeout 函数连续循环?
例如
setTimeout(function(){
$(".slide2").hide();
$(".slide").show();
setTimeout(function(){
$(".slide").hide();
$(".slide2").show();
}, 1000);
}, 1000);
setInterval
实际上是邪恶的,如果 setInterval 中的代码花费的时间比您设置的时间长,它将在函数完成所有事情之前创建另一个进程。所以选择setTimeout
其实更好。
要使函数循环setTimeout
使用以下语法:
function function1() {
console.log({} + [] + " = {} + []"); // run this it is actually funny
}
function runner() {
function1();
setTimeout(function() {
runner();
}, time);
}
runner();
使用setInterval
andtoggle()
代替。
setInterval(function () {
$(".slide2").toggle();
$(".slide").toggle();
}, 1000);
您可以减少嵌套,并且可能使用setTimeout和 toggle 会处理其余部分(在执行之前默认显示您的第一个元素。)。
function slideEm()
{
$(".slide2").toggle();
$(".slide").toggle(); // Make this visible first
window.setTimeout(slideEm, 1000);
}
slideEm();
或使用setInterval
function slideEm()
{
$(".slide2").toggle();
$(".slide").toggle(); // Make this visible first
}
$(function(){
$('.slide').show(); //Using css hide both of them and show this first
window.setInterval(slideEm, 1000); // start the callback loop with a sec interval
});