Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Выполнить скрипт до отрисовки DOM (https://javascript.ru/forum/events/54848-vypolnit-skript-do-otrisovki-dom.html)

NeVirus 03.04.2015 06:03

Выполнить скрипт до отрисовки DOM
 
Добрый день,

как можно выполнить JS скрипт ДО отрисовки элементов страницы?

Скрипт небольшой, на ванильном JS, делает редирект с некоторых страниц на форму регистрации если пользователен не залогинился.
Объявление сделал в HEAD... но опера и огнелис все равно успевают иногда на несколько миллисекунд отобразить содержимое страницы и это раздражает (в хроме все ОК, но думаю это скорее заслуга железа чем кода). В идеале хотелось бы что б код скрипта считывался перед отрисовкой DOM и останавливал ее до момента своего выполнения.

Заранее спасибо за ответы.

ksa 03.04.2015 08:24

NeVirus, как вариант, в ЦСС оформить так, чтобы страница, даже загруженная, была не видна.
А тот скрипт доделать так, чтобы он либо редиректил... Либо разрешал показ той страницы.

NeVirus 03.04.2015 10:50

@ksa:

Так и сделал пока что ... но все таки хотелось бы узнать, как можно остановить рендер DOM в случае нужды. В данном кейсе у меня странички мелкие (сам скелет HTML и CSS) и не критично дождаться полной загрузки что бы подергать стили, но в случае какой нибудь толстой SPA может быть и по-другому.

Aetae 03.04.2015 11:54

window.stop()

ksa 03.04.2015 14:07

Цитата:

Сообщение от NeVirus
но в случае какой нибудь толстой SPA может быть и по-другому

Толстые SPA и делать нужно по другому... :)
Загрузил некий "кандоминимум", отослал запросы по другим частям страницы...
Т.о. опять рендеринг успеет сработать быстрее той же отсылки запросов...

NeVirus 06.04.2015 05:38

@Aetae:

вот вроде то что нужно! Спасибо, буду тестить.

@ksa:

ну да, логично :) ... SPA тут наверное не в теме.


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