Видимость блока collapsiblock во время загрузки страницы.

Главные вкладки

Аватар пользователя orel orel 2 августа 2020 в 19:09

Использую модуль collapsiblock для входа на сайт через блок.
Когда блок по умолчанию collapsiblockCollapsed, т.е. не виден, во время загрузки страницы форма для входа видна доли секунды. Сейчас таблицы стилей не сжаты, и страницы не кешируются, но, думаю, будет происходить то же самое с кешированием.

Заходите на https://dealas.ru/. Блок со второй иконкой сверху справа - вход на сайт. Он виден во время загрузки.

Комментарии

Аватар пользователя VasyOK VasyOK 2 августа 2020 в 21:38

Если загружать js до загрузки html - этот эффект пропадет. Но вы просядете в pagespeed. Я использую прелоадер в начале страницы, а основной js гружу в конце. Т.обр. все что формируется оно как бы за ширмой. Вот так: https://kapital-trans.ru/
https://drupal.ru/node/140231 - тут ответил.

Аватар пользователя orel orel 2 августа 2020 в 23:29

Это происходит всегда при загрузке других страниц. А блок этот еще и на видном месте. В начале сессии использовать прелоадер можно, но потом уже нет.

Аватар пользователя VasyOK VasyOK 3 августа 2020 в 1:05

Этот прелоадер чисто косметический, можно и без него. Ну ок, ставьте формирование js наверх страницы в html.html.twig
Или хотя бы дебаг темы выключите.

Аватар пользователя orel orel 3 августа 2020 в 8:53

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

Аватар пользователя orel orel 3 августа 2020 в 10:30

Все замечательно просто. Добавила display:none; в css к id формы. Во время загрузки формы нет. Я думала, в этом случае блок не появится, но все работает.
Пришлось добавить display:none; блоку "Регистрация Забыли пароль? Без этого он был виден во время загрузки.