空白的白色背景循环

时间:2016-10-07 19:21:32

标签: jquery

我使用循环多次更改背景图像。在第四张图像之后有一个空白的白色背景。有人能看出为什么会这样吗?

var images = ['img/icecream-993678_1280.png', 'img/little-cake-1426070_1920.png', "img/sweet-1104378_1280.jpg", "img/gummibarchen-1506173_1920.jpg"];
var count=0;
    $(document).ready(function() {
    $("#button").click(function(){ 
         nFunct(images);
        });
         });

function nFunct(images) {
     var bg = images[count];
     $('body').css('background-image', 'url(' + bg + ')');
     count = count + 1;
     if (count > images.length) {
     count = 0;

     }
   }

1 个答案:

答案 0 :(得分:3)

您应该将if语句最后更改为if (count > images.length - 1)。长度不是从零开始的,因此images.length是4.但是,最后一个图像的索引是3,所以在最后一个图像后显示count增量为4,但是因为4不大于4 ,所以循环运行一次。一旦计数达到5,然后 if语句通过,count重置为0.

使用(count >= images.length)也可以。