我在弄清楚为什么我的滑块为什么不会在变量numSlides中的所有3张幻灯片中都没有循环两次,然后在第三幅图像从最后一个循环淡出后在第一个循环中淡出,然后停下来却不知道。有什么想法吗?我在这方面遇到了障碍。

var slide = $(".container .slide");
var slideIndex = -1;
var numSlides = 3;

function showNextSlide() {
    if (slideIndex < 2* numSlides) {
        ++slideIndex;
        slide.eq(slideIndex % slide.length)
            .fadeIn(700)
            .delay(4000)
            .fadeOut(700, showNextSlide)
            .delay(11000);
            $('.container .slide:first-child').fadeIn(700);
    }
}

showNextSlide();


http://jsfiddle.net/wyz6c873/

最佳答案

您应该重新定义slideIndex

   function showNextSlide() {
        if (slideIndex < 2* numSlides) {
            ++slideIndex;
            slide.eq(slideIndex % slide.length)
                .fadeIn(700)
                .delay(4000)
                .fadeOut(700, showNextSlide)
                .delay(11000);
                $('.container .slide:first-child').fadeIn(700);
        } else slideIndex = -1;
    }

10-04 16:44