Em jQuery, é possível invocar uma chamada de retorno ou desencadear um acontecimento após a invocação de .each()(ou qualquer outro tipo de chamada de retorno iterativo) tenha completado .
Por exemplo, eu gostaria que esse "desbotamento e remoção" fosse concluído
$(parentSelect).nextAll().fadeOut(200, function() {
$(this).remove();
});
antes de fazer alguns cálculos e inserir novos elementos após o $(parentSelect). Meus cálculos estão incorretos se os elementos existentes ainda estiverem visíveis para jQuery e adormecer / atrasar uma quantidade arbitrária de tempo (200 para cada elemento) parecer uma solução quebradiça, na melhor das hipóteses.
Posso facilmente .bind()a lógica necessária para um retorno de chamada do evento, mas não tenho certeza de como limpa invocar o .trigger()após o acima iteração foi concluída . Obviamente, não posso chamar o gatilho dentro da iteração, pois ele seria disparado várias vezes.
No caso de $.each(), considerei adicionar algo ao final do argumento de dados (que eu procuraria manualmente no corpo da iteração), mas eu odiaria ser forçado a isso, então esperava que houvesse alguma outra coisa elegante. maneira de controlar o fluxo com relação aos retornos de chamada iterativos.