Domanda

So come aspettare fino un'animazione viene fatto con

$('#element').animate(speed,function(){
//code here
});

e con più elementi con

$('#element1, #element2').promise().done(function(){
//code here
});

ma come faccio aspettare fino a tutti degli elementi della pagina sono animatrice fatto? Avrei preferito non appena messo in ogni elemento che sto aspettando lì dentro.

È stato utile?

Soluzione

Per selezionare tutto quello che è in corso di animazione attualmente, basta fare $(":animated") http://api.jquery.com/animated-selector/

La combinazione che con quello che hai già lì, sarebbe solo

$(":animated").promise().done(function() {
    //code here
});

Altri suggerimenti

La risposta data da Jeremy T funziona bene - anche se sulla base dei commenti sul sito di jQuery ha collegato ( http: // api .jquery.com / animazione selettore / ), sarebbe una soluzione più veloce per aggiungere una classe per ogni elemento della pagina che può essere animato, e poi selezionarle utilizzando

    $('.animationclass').filter(':animated').promise().done(function() {
//Your function
});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top