Есть ли событие jQuery, которое срабатывает, когда все эффекты выполнены? - PullRequest
0 голосов
/ 20 января 2009

Заголовок объясняет вопрос, в противном случае есть способ вызвать функцию, когда все эффекты на странице выполнены?

Ответы [ 2 ]

3 голосов
/ 20 января 2009

Вы можете вкладывать анимацию так, как эта

$('#Div1').slideDown('fast', function(){
   $('#Div2').slideUp('fast');
});

И делать их последовательно ...

Вы также можете сделать что-то вроде этого:

var animations = 0;
checkAnimation(1);
$('#Div1').slideDown('fast', function(){
   checkAnimation(-1);
});

checkAnimation(count){
   animations += count;
   if(count == 0)
      //animations complete
   }
   else {
       //still animating
   }
}

Надеюсь, это поможет.

2 голосов
/ 20 января 2009

Вы можете использовать .queue , чтобы получить функциональность, к которой вы стремитесь. Если бы длина очереди была равна 0, вы бы знали, что все анимации на объекте закончены.

Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...