2009-10-30 13 views
50

Uso di jQuery Sto creando un'animazione di base 'tooltip' in modo che il suggerimento apparirà in una piccola animazione in cui sfuma in vista e si sposta verticalmente.Come si dissolvono e si animano allo stesso tempo?

Finora ho questo:

$('.tooltip').fadeIn('slow'); 
$('.tooltip').animate({ top: "-10px" }, 'slow'); 

Farlo in questo modo o in questo modo:

$('.tooltip').fadeIn('slow').animate({ top: "-10px" }, 'slow'); 

Le animazioni verranno eseguiti uno alla volta, la dissolvenza in prima e poi l'animazione verticale . C'è un modo per farlo fare entrambi allo stesso tempo?

risposta

67
$('.tooltip').animate({ opacity: 1, top: "-10px" }, 'slow'); 

Tuttavia, questo non sembra di lavorare su display: none elementi (come fadeIn fa). Quindi, potrebbe essere necessario mettere questo in anticipo: (es. Da codice diverso)

$('.tooltip').css('display', 'block'); 
$('.tooltip').animate({ opacity: 0 }, 0); 
+24

+1. Tuttavia, '$ ('. Tooltip'). Show()' è un'alternativa migliore a '$ ('. Tooltip'). Css ('display', 'block');'. – Noldorin

+1

@Noldorin grazie – Tinister

+4

Che dire di IEs '{filter: alpha (opacity = 50);}'? Questo si occupa anche di questa opzione? La coda –

16

Un altro modo per fare le animazioni simultanee se si desidera chiamare separatamente è quello di utilizzare queue. Anche in questo caso, come con la risposta di Tinister si dovrebbe utilizzare animare per questo e non fadeIn:

$('.tooltip').css('opacity', 0); 
$('.tooltip').show(); 
... 

$('.tooltip').animate({opacity: 1}, {queue: false, duration: 'slow'}); 
$('.tooltip').animate({ top: "-10px" }, 'slow'); 
46

Per le persone ancora in cerca di un paio di anni dopo, le cose sono cambiate un po '. È ora possibile utilizzare la queue per .fadeIn() pure in modo che funziona in questo modo:

$('.tooltip').fadeIn({queue: false, duration: 'slow'}); 
$('.tooltip').animate({ top: "-10px" }, 'slow'); 

Questo ha il vantaggio di lavorare su display: none elementi in modo non è necessario l'extra due righe di codice.

+0

è una potente opzione, specialmente quando si lavora su effetti di animazione, grazie mille. – QMaster

Problemi correlati