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.