Как получить ввод от пользователя в Javascript, при загрузке кода. - PullRequest
0 голосов
/ 17 мая 2018

Это мой демонстрационный код:

while (true) {
// Part one: Execute this code

input = prompt("Enter input"); // Now wait for user input

// Part two: Now execute this after getting user input

}

Но это не работает, как я показал в комментариях. Сначала пользователь запрашивает ввод, затем загружает на экран первую и вторую части.

1 Ответ

0 голосов
/ 17 мая 2018

При выполнении JavaScript браузеры накапливают все изменения в DOM перед повторным рендерингом. Диалог prompt задерживает завершение потока JavaScript и задерживает операцию повторного рендеринга.

Чтобы позволить браузеру отображать накопленные изменения, поместите prompt и все последующие операции в функцию setTimeout.

document.write("I Want to Display this before Prompt");
$("div").addClass("blue")
setTimeout(function() {
    input = prompt("test");
    //PUT more code here
});

setTimeout будет содержать свой блок кода для следующего тика рендеринга браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...