не в состоянии связать анимацию в JQuery - PullRequest
3 голосов
/ 29 января 2010

У меня есть список, который скрыт с помощью кода CSS {display: none;}

теперь я использую код jquery для анимации списка (li's)

var numb = $("ol#update li").length;
 for(j=0; j < numb; j++) {                    
  $("ol#update li").eq(j).animate({
    height: 'show',
opacity: 'show'
}, {duration:1000});
  }

Мне нужно анимировать элементы один за другим

есть пример на этой странице

но все ли оживляются одновременно, и я не могу понять почему.

1 Ответ

4 голосов
/ 29 января 2010

Просто используйте это вместо:

var $li = $("ol#update li");
function animate_li(){
   $li.filter(':first')
      .animate({
         height:  'show',
         opacity: 'show'
      }, 1000, function(){
        animate_li();
      });
  $li = $li.not(':first');
}
animate_li();

По сути, он захватывает все li с, а затем один за другим оживляет их. В то же время каждая итерация удаляет первый элемент из списка. Если вы хотите, чтобы анимация была наоборот, замените оба вхождения :first на :last.

...