Показать сообщение отдельно
  #1 (permalink)  
Старый 20.07.2010, 02:08
Интересующийся
Отправить личное сообщение для korzhik Посмотреть профиль Найти все сообщения от korzhik
 
Регистрация: 14.07.2008
Сообщений: 25

Слайдшоу странно работает
Доброй ночи

Столкнулся с проблемой при написании простого слайдшоу для сайта.

Вот код

(function(el){
                var img = ['a1', 'a2', 'a3'], l = img.length, eff = ['fadeIn', 'fadeOut'], k = 1, i = Math.round(Math.random() * (l - 1));
                el[1].css('background', 'url(/img/' + img[0] + '.jpg) center bottom no-repeat');
                (function(){                    
                    el[(m = (i = ++i % l) % 2)].css('background', 'url(/img/' + img[i] + '.jpg) center bottom no-repeat')[eff[k ^= 1]](2000);                    
                    el[m ^= 1][eff[k ^= 1]](2000);
                    setTimeout(arguments.callee, 3000);
                })();
            })([$("#auto1"), $("#auto2")]);


Фигня в том, что при нечетном количестве элементов в массиве, на последнем элементе получается не плавная смена картинок а "перетык" такой. При четном количестве - все работает как надо. Может конечно поспать надо, но очень хочеться сегодня закончить =)

Демо страничка - http://awcentr.ru/new_file.html

Заранее спасибо
Ответить с цитированием