Dans jQuery, est-il possible d' appeler un rappel ou de déclencher un événement après qu'un appel de .each()
(ou de tout autre type de rappel itératif) soit terminé .
Par exemple, je voudrais que cette "fondu et suppression" se termine
$(parentSelect).nextAll().fadeOut(200, function() {
$(this).remove();
});
avant de faire quelques calculs et d'insérer de nouveaux éléments après le $(parentSelect)
. Mes calculs sont incorrects si les éléments existants sont toujours visibles par jQuery et que dormir / retarder une durée arbitraire (200 pour chaque élément) semble au mieux être une solution fragile.
Je peux facilement .bind()
la logique nécessaire à un rappel d'événement , mais je ne sais pas comment proprement Invoke l' .trigger()
après ce qui précède itération terminée . De toute évidence, je ne peux pas invoquer le déclencheur à l'intérieur de l'itération car il se déclencherait plusieurs fois.
Dans le cas de $.each()
, j'ai envisagé d'ajouter quelque chose à la fin de l'argument de données (que je rechercherais manuellement dans le corps de l'itération) mais je détesterais être forcé à cela, alors j'espérais qu'il y avait un autre élégant moyen de contrôler le flux par rapport aux rappels itératifs.