Я сидел на этом в течение нескольких часов и не могу понять это.Я пытаюсь создать слайд-шоу (3 слайда), которое повторяется бесконечно.Каждый слайд является ливом внутри #slideshow.Я прошел через это с помощью отладчика, и все переменные были установлены правильно, но я не понимаю, почему анимация на самом деле не происходит.У меня есть это, которое в конечном итоге отображает все изображения на странице:
$(document).ready(function() {
$slideshow = $('#slideshow');
$slideshowItems = $slideshow.find('li');
$slideshowItems.hide();
nextI = function(x) {
if ((x+1) < $slideshowItems.length) {
return x+1;
}
else {
return 0;
}
}
animation = function(i) {
$slideshowItems.eq(i).fadeIn(500).delay(1000).fadeOut(500, animation(nextI(i)));
}
animation(0);
Если я делаю:
$slideshowItems.eq(0).fadeIn(500).delay(1000).fadeOut(500,
$slideshowItems.eq(1).fadeIn(500).delay(1000).fadeOut(500,
$slideshowItems.eq(2).fadeIn(500).delay(1000).fadeOut(500));
Это работает, как ожидалось, но кажется уродливым и не зацикливается.
Есть идеи, почему я не могу заставить это работать?Я чувствую, что это связано с моими ожиданиями того, как JQuery / JS модифицирует DOM или последовательность, которую браузер использует для выполнения анимации.Спасибо за помощь!