我在延迟函数的第一次运行时遇到问题。我创建了一个非常简单的幻灯片,但正因为如此,我在延迟第一次运行时遇到了问题。
我希望第一次运行等待 10 秒,然后在其余图像之间保持 4 秒的延迟。
这是我的代码:
function slideshow() {
$("#slideshow .slide:hidden:first").fadeIn(1000).delay(4000).fadeOut(1000, function() {
$(this).appendTo($(this).parent());
slideshow();
});
}
$(document).ready( function () {
$("#slideshow .slide").hide();
slideshow();
});
我尝试了几种不同的东西,但没有成功。
我认为在这个问题上不需要 jsfiddle,但如果你想要它,只需评论,我会设置它!
提前感谢!
您正在寻找Javascript的内置setTimeout
函数,它创建一个计时器并在计时器完成后执行传递的代码。在你的$(document).ready()中,你可以试试这个:
setTimeout( slideshow, 10000);
这会将 slideshow
函数的执行延迟 10 秒。文档在这里
在第一次调用幻灯片放映函数时使用超时。 setTimeout
接受第二个参数作为在执行参数中的代码之前等待的毫秒数。10,000 毫秒是 10 秒。
$(document).ready( function () {
$("#slideshow .slide").hide();
setTimeout(function(){slideshow();},10000);
});