Показать сообщение отдельно
  #2 (permalink)  
Старый 04.06.2015, 08:06
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

KiZZek,
Если функция асинхронная то используйте промисы:

var togglePreloader = function () {
  alert('Спрятали/показали прелоадер');
}

var longFunction = function () {
  togglePreloader();
  return new Promise(function (resolve) {
    // Тело функции
    setTimeout(resolve, 2000); // Вместо таймаута вызывайте resolve в конце рассчетов/запросов и т.д.
  });
};

longFunction().then(function () {
  alert('Расчет закончен');
  togglePreloader();
});
Ответить с цитированием