В значительной степени как вопрос говорит, у меня есть некоторый код, работающий через определенный интервал:
$("#blah").fadeOut(2000);
$("#blah2").fadeIn(2000);
Я хотел бы постепенно исчезнуть, затем постепенно появился бы, вместо того, чтобы иметь оба движения одновременно. Существует ли простой способ?
$("#blah").fadeOut(2000);
$("#blah2").delay(2000).fadeIn(2000);
Или:
$("#blah").fadeOut(2000, function(){
$("#blah2").fadeIn(2000);
});
Вам необходимо использовать функцию обратного вызова
, чтобы гарантировать, что анимация завершится перед вызовом другой. Выглядит так:
$('#blah').fadeOut(2000, function(){
$('#blah2').fadeIn(2000);
});
см. .fadeOut ()
$('#blah').fadeOut(2000, function(){
$("#blah2").fadeIn(2000);
});
Как объяснено в документации :
.fadeOut ([duration], [callback])
duration : Строка или число, определяющее как долго будет работать анимация.
callback : функция, вызываемая после анимация завершена.