Событие изменения текста в div
имеем такой html:
<div class="foo">foo text</div> В этот блок мы вставляем сообщение "Запрос к серверу...", затем генерируем сам запрос: // 1) команда изменения содержимого div $(".foo").text("Запрос к серверу..."); // 2) ресует <div class="foo">Запрос к серверу...</div> // 3) окно подвисает на время запроса к серверу $.ajax({... async: false, ... }); На деле работает в последовательности 1,3,2, то есть текст меняется после запроса. Можно исправить это так: $(".foo").text("Запрос к серверу..."); setTimeout(function(){ $.ajax({... async: false, ... }); }, 20); .. но хотелось бы как-то так: $(".foo").text("Запрос к серверу...").done(function(){ $.ajax({... async: false, ... }); }) Есть ли такое решение? |
Dinar,
Поставьте async: true, и будет 1-2-3 А потом в sucsess напишите в div о выполнении запроса |
Да, верно. Но хотелось бы решения с async:false
|
Главный вопрос в том, чтобы найти способ запуска следующей команды только после того, как в окне были завершены эффекты действия первой команды.(без timeout)
|
Dinar,
переписать на ES6 и юзать его фичи - промисы. |
Часовой пояс GMT +3, время: 02:19. |