У меня есть две функции, которые должны вызываться последовательно в цикле, который в коде будет повторяться 3 раза. Во второй функции у меня есть некоторые анимации, и я не знаю, как заставить цикл ждать завершения анимации второй функции, чтобы цикл перешел к следующей итерации.
ФУНКЦИЯ ПЕТЛИ
function startGame(){
emptyTab();
$("#movimentos-text").html(0)
$('.time').show()
$('.painel-tabuleiro').show();
$(".btn-reinicio").text("Reiniciar")
for(var i = 0; i < 3; i ++){
generateRandomCandys()
emptyElements()
}
}
ПЕРВАЯ ФУНКЦИЯ
function generateRandomCandys(){
var elements = $(".painel-tabuleiro").children("div");
for (var i = 1; i <= elements.length; i++) {
for (var j = elements[i-1].childElementCount; j < 7; j++) {
//... some logic
}
}
}
}
ВТОРАЯ ФУНКЦИЯ
function emptyElements(){
// ... some logic
$(".equalElement").fadeOut()
$(".equalElement").fadeIn()
$(".equalElement").fadeOut()
$(".equalElement").fadeIn()
$(".equalElement").fadeOut(function() {
$(".equalElement").remove()
})
}
Я уже пытался использовать асинхронные и ожидание, обещание, интервал и время ожидания, но ничего не получалось.
Я хочу знать, как это сделать:
for(var i = 0; i < 3; i ++){
run first: generateRandomCandys()
run second: emptyElements()
wait the emptyElements() animations finish to increase i
}