Вращение Div с использованием jQuery - PullRequest
0 голосов
/ 11 ноября 2010

Простой простой.

Я пытаюсь повернуть изображение внутри элементов div и вернуться к первому, когда будет достигнут конец моего массива.Может кто-нибудь, пожалуйста, помогите указать мне, где я ошибаюсь в моем коде здесь?Кажется, что когда он попадает ко второму изображению, индекс никогда не возвращается к нулю, чтобы снова начать с первого изображения в моем массиве.

var images = new Array ('.advert1', '.advert2');
var index = 0;

function rotateImage()
{

$(images[index]).fadeOut('fast', function()
{
    index++;        

    $(images[index]).fadeIn('fast', function()
    {

        if (index == images.length-1)
        {
            index = 0;
        }

    });
});
}

Это вызывается с setInterval каждые 5 секунд.

 setInterval (rotateImage, 5000);

Большое спасибо!

1 Ответ

1 голос
/ 11 ноября 2010

Вам нужно проверить, не вышел ли индекс за границы, прежде чем его использовать ..

function rotateImage()
{

  $(images[index]).fadeOut('fast', function()
   {
       index++;
       if (index == images.length)
           {
               index = 0;
           }
       $(images[index]).fadeIn('fast');
   });
}

, потому что когда ваша функция была вызвана и index была равна 1, она бы пришла 2, а затемпопытаться исчезнуть в images[2], который потерпит неудачу ...

...