首次运行时延迟较大



我在延迟函数的第一次运行时遇到问题。我创建了一个非常简单的幻灯片,但正因为如此,我在延迟第一次运行时遇到了问题。

我希望第一次运行等待 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);
});

最新更新