2011-11-14 6 views

risposta

6

Sei quasi corretto.

"oggetti posticipati" possono essere utilizzati per elaborare eventi asincroni - si avvia un'azione e quindi si registra un callback che verrà richiamato al termine dell'azione. Questo include AJAX, anche se ci sono molti altri usi.

jQuery code vengono effettivamente utilizzati principalmente per mantenere una coda di funzioni (animazione) di essere chiamato in sequenza, e .queue() particolare viene utilizzato per aggiungere la tua funzione in una coda di animazione.

Per complicare ulteriormente le operazioni, le animazioni possono anche attivare callback asincroni al termine. Il modo "tradizionale" per farlo era quello di fornire un callback alla funzione di animazione, ma con il jQuery moderno se si chiama .promise() su un oggetto jQuery si ottiene un oggetto posticipato che verrà risolto quando qualsiasi animazione esistente su ogni elemento all'interno di quell'oggetto completato:

$('#id1,#id2').slideUp().promise().done(function() { 
    // this will be called when the animations are complete 
});