2016-10-07 5 views
2

루프를 사용하여 여러 번 배경 이미지를 변경합니다. 네 번째 이미지 뒤에 빈 흰색 배경이 있습니다. 누군가가 왜 그렇게 볼 수 있었 을까?빈 흰색 배경 루프

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; 

    } 
    } 

답변

3

당신은 if (count > images.length - 1)에 말에 if 문을 변경해야합니다. 길이가 0부터 시작하지 않으므로 images.length은 4입니다. 그러나 마지막 이미지의 인덱스는 3이므로 마지막 이미지가 표시된 후 count이 4로 증가하지만 4는 4보다 크지 않으므로 루프가 한 번 더 실행됩니다 . 카운트가 도착하면에 5 다음 문 패스 경우 count뿐만 아니라 (count >= images.length) 작품을 사용하여 0

에 리셋됩니다.

+1

또는 'if (count === images.length)' –

관련 문제