Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Событие по изменению содержания страницы (https://javascript.ru/forum/dom-window/85558-sobytie-po-izmeneniyu-soderzhaniya-stranicy.html)

Юра_2310 21.10.2023 12:02

Исправил интервал у таймера, как вы предлагали сразу (на 0).
Цитата:

Сообщение от voraa (Сообщение 553694)
setTimeout ставит функцию в очередь через указанный интервал.

Тогда таймер должен выполнить функцию сразу, если интервал 0?
Но по факту таймер позволяет выполнить загрузку страницы до конца. Я и саму страницу увеличил в размерах в два раза. Все равно она успевает загрузиться до выполнением таймером указанной функции. Таймер не выдерживает интервал 0. Почему так происходит? Разве нет противоречия с вашим утверждением?

voraa 21.10.2023 12:40

Таймер ставит функцию в очередь через указанный промежуток времени. В конец очереди. Но сейчас выполняется ваша функция. После нее уже могут стоять другие задачи - например какие нибудь обработчики событий от мыши. Плюс к тому же между задачами из очереди в соответствии с частотой экрана делается рендерин страницы, который может потребовать перерасчета стилей И только когда все это выполнится, будет выполняться функция, заданная таймером.
Реально это не выполнить функцию через указанный промежуток, а поставить в очередь.

Юра_2310 21.10.2023 22:56

Цитата:

Сообщение от voraa (Сообщение 553698)
Таймер ставит функцию в очередь через указанный промежуток времени. В конец очереди.

Огромное спасибо!
Теперь понятно. Вроде бы вы это и написали. Особенно "В конец очереди" для меня прояснило ситуацию.


Часовой пояс GMT +3, время: 18:39.