Как выполнять функцию сначала после ее выполнения?

218
23 декабря 2017, 07:15

Как реализовать выполнение функции после ее полного окончания(должна закончиться анимация) ? Нужно выполнять в течение 30 секунд, после этого завершаем выполнение. P/S Пробовал сделать через while, но тогда происходит зацикливание и функция выполняется каждую секунду.

Функция:

function createFruit() {
        for(let i = 0; i < fruit.length; i++) {
          //createFruit
          const randomFruit = Math.floor(Math.random() * fruit.length);
          const newFruit = document.createElement('div');
          const imageFruit = document.createElement('img');
          newFruit.id = fruit[randomFruit].id;
          newFruit.className = 'fruit';
          imageFruit.src = fruit[randomFruit].src;
          container.appendChild(newFruit);
          newFruit.appendChild(imageFruit);
          newFruit.addEventListener("animationend", function() {container.removeChild(newFruit);}, false);
        }
      }
Answer 1

var timeStart; 
var timer; 
 
function createFruit() { 
  // any logic 
} 
 
function Go() { 
  if((new Date()).getTime() - timeStart.getTime() > 1000*30) { 
     window.clearInterval(timer); 
     console.log("stop"); 
     return; 
  } 
   
  console.log("go"); 
  createFruit(); 
} 
 
function StartTimer() { 
   timeStart = new Date(); 
   timer = window.setInterval(Go,1000); 
} 
  
StartTimer(); 

READ ALSO
создание редактора форм [требует правки]

создание редактора форм [требует правки]

Нужно создать кнопки (удалить объект, добавить объект, редактировать объект, поднять/опустить объект на 1 позицию) Знаю, что локальные переменные...

168
Ошибка в ajax запросе к форме

Ошибка в ajax запросе к форме

Добрый день всем, ребят, не могу понять в чем проблема, очевидно имеет место быть какая то ошибка в ajax запросе, подскажите пожалуйста где я опростоволосился

215
проверка Email в чистом javascript

проверка Email в чистом javascript

Валидация работает только если без проверки Email, то есть только проверка пустой строки, не могу понять почему не получается добавить проверку...

227