- Регистрация
- 16.06.2017
- Сообщения
- 187
- Благодарностей
- 31
- Баллы
- 28
Многие, наверное, сталкивались с ситуацией, когда загрузку страницы сопровождает приглушенно-затемненный фон со значком ожидания, наподобии этого.
Этот фон - как некий сигнал от сайта, что нужно подождать, преждем чем предпринимать дальнейшия действия. И часто бывает так, что Зенно уверенно полагает, что загрузка страницы уже завершена и можно переходить к следующему шагу, но по факту шаблону нужно терпеливо дожидаться, когда темный фон исчезнет.
Можно, конечно, парсить код активного темного фона вплоть до исчезновения, но тогда получается цикл, который в случае сбоя связи может замкнуться в бесконечности:
Не секрет, что такие циклы - дурной тон.
Таким образом, напрашивается вариант выйти из цикла после, скажем, 50 попыток с интервалом в 2 секунды, чтобы полноценно перезагрузить страничку. Получается простенькая схемка, при которой уже не нужно переживать за бесконечный цикл:
Но здесь есть другой минус: награмождение блоков, от которого рябит в глазах. Ведь есть сайты, где любой переход между страницами должен сопровождаться этой проверкой.
Очень хочется, чтобы функционал содержался только в одном блоке (максимум в двух), это очень бы облегчило читабельность схемы шаблона.
Т.е. код должен взять на себя сразу несколько функций: выдержать паузу, увеличивать счетчик, и сравнивать его с количеством попыток, а в случае их превышения выполнить window.location.replace(window.location.href); (хотя это можно уже доверить другому блоку). Подскажите, пожалуйста, это реально ли сообще сделать или я хочу чего-то сверхъестественного? Либо может есть решение проще.
Благодарю за внимание к задаче.
Этот фон - как некий сигнал от сайта, что нужно подождать, преждем чем предпринимать дальнейшия действия. И часто бывает так, что Зенно уверенно полагает, что загрузка страницы уже завершена и можно переходить к следующему шагу, но по факту шаблону нужно терпеливо дожидаться, когда темный фон исчезнет.
Можно, конечно, парсить код активного темного фона вплоть до исчезновения, но тогда получается цикл, который в случае сбоя связи может замкнуться в бесконечности:
Не секрет, что такие циклы - дурной тон.
Таким образом, напрашивается вариант выйти из цикла после, скажем, 50 попыток с интервалом в 2 секунды, чтобы полноценно перезагрузить страничку. Получается простенькая схемка, при которой уже не нужно переживать за бесконечный цикл:
Но здесь есть другой минус: награмождение блоков, от которого рябит в глазах. Ведь есть сайты, где любой переход между страницами должен сопровождаться этой проверкой.
Очень хочется, чтобы функционал содержался только в одном блоке (максимум в двух), это очень бы облегчило читабельность схемы шаблона.
Т.е. код должен взять на себя сразу несколько функций: выдержать паузу, увеличивать счетчик, и сравнивать его с количеством попыток, а в случае их превышения выполнить window.location.replace(window.location.href); (хотя это можно уже доверить другому блоку). Подскажите, пожалуйста, это реально ли сообще сделать или я хочу чего-то сверхъестественного? Либо может есть решение проще.
Благодарю за внимание к задаче.