#javascript
Вопрос:
На моем веб-сайте каждый раз, когда пользователь вводит команду, отображается круг загрузки. Это происходит с помощью команды jquery
$("#load").show()
Но проблема в том, что панель круга загрузки отображается только тогда, когда у меня есть отладчик и я смотрю на него в inspect. Вот несколько фотографий:
Затем без элемента inspect панель загрузки не отображается. ПОМОГИТЕ, ПОЖАЛУЙСТА!!!
Комментарии:
1. Вероятно, что-то еще скрывает это. Когда вы используете отладчик, вы останавливаетесь между этими двумя операциями, поэтому видите круг загрузки.
2. Да, в этом-то и проблема, я не могу понять, что это скрывает, даже пройдя шаг за шагом через события.
3. Я видел это раньше. Если вы слишком много обрабатываете в браузере, он никогда не сможет обновить пользовательский интерфейс. Вам нужно показать свой загрузчик в другом потоке, создав его либо как обещание, либо, проще говоря, как функцию settimeout с одной миллисекундой.
4. @JohnLord Большое тебе спасибо, Джон, что ответил на мой вопрос! (сработала задержка в 1 миллисекунду)
Ответ №1:
Я видел это раньше. Если вы слишком много обрабатываете в браузере, он никогда не сможет обновить пользовательский интерфейс. Вам нужно показать свой загрузчик в другом потоке, создав его либо как обещание, либо, проще говоря, как функцию settimeout с одной миллисекундой.
setTimeout(() =gt; { $("#load").show(); }, 1);