2010-06-07 12 views
6

Praticamente come la questione dice, ho qualche codice in esecuzione su un intervallo:Come si effettua il blocco di fadeOut in JQuery?

$("#blah").fadeOut(2000); 
$("#blah2").fadeIn(2000); 

mi piacerebbe dissolvenza, poi fadeIn, piuttosto che avere sia in corso contemporaneamente. C'è un modo semplice?

risposta

6
$("#blah").fadeOut(2000); 
$("#blah2").delay(2000).fadeIn(2000); 

Oppure:

$("#blah").fadeOut(2000, function(){ 
    $("#blah2").fadeIn(2000); 
}); 
+0

Perfetto, grazie! – NibblyPig

1

È necessario utilizzare la funzionalità callback per garantire che l'animazione venga completata prima di chiamarne un'altra. Assomiglia a:

$('#blah').fadeOut(2000, function(){ 
    $('#blah2').fadeIn(2000); 
}); 

vedere. .fadeOut()

1
$('#blah').fadeOut(2000, function(){ 
    $("#blah2").fadeIn(2000); 
}); 

Come spiegato nella documentation:

.fadeOut ([durata], [callback])

durata: Una stringa o un numero determinare quanto tempo l'animazione correre.

callback: una funzione da chiamare una volta completata l'animazione .

0
$("#blah").fadeOut(2000); 
setTimeout('$("#blah2").fadeIn(2000);', 2000); 
Problemi correlati