@dennydeepend

Как установить setTimeout внутри .each()?

Перебираю элементы, нужно чтобы после выполнения каждой итерации происходила задержка... и она происходит но для всех итераций одновременно можно конечно 1000 * i и тогда у каждой итерации будет своя задержка больше предыдущей, но можно ли сделать как-то так чтоб следующая итерация запускалась только после timeout?
syncDate.each(function(i){
        setTimeout(() => {
            $(this).addClass("show");
        }, 1000);
    });
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ответы на вопрос 1
TMProject
@TMProject
Frontend developer React/Redux
async function addClassAsync(element) {
  return new Promise((resolve) => {
    setTimeout(() => {
      element.addClass("show");
      resolve();
    }, 1000);
  });
}

async function processElements() {
  for (let i = 0; i < syncDate.length; i++) {
    await addClassAsync($(syncDate[i]));
  }
}

processElements()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы