Как добавить задержку появления alert
Есть вот такой скрипт в теле html
<script type="text/javascript"> if (!('123' in window)) { alert('Отключите адблок'); } </script> И подключенный JS файл advert.js с единственной строчкой: window.123 = false; Если данный файл не загружается (заблокирован к загрузке соответствующим расщирением), то выскакивает алерт. Мне кажется, что скрипт срабатывает слишком быстро, что страница даже не успевает полностью прорисоваться. Я не программист, не знаю как объяснить. Но пока не нажмёшь, остальное не отобразится, по крайней мере в Хром. Наиболее явно это начинает происходить при просмотре второй и последующих страниц. Видимо после открытия сайта скрипты кешируются и технически (код) успевает загружаться, а вот прорисовываться сама страница в браузере ещё нет. Это может смутить посетителя. Как отсрочить появление данного сообщения? |
12345678,
Смотрите https://learn.javascript.ru/onload-ondomcontentloaded |
<script type="text/javascript"> if (!('123' in window)) { setTimeout("alert('Отключите адблок')",2000); } </script> |
j0hnik,
зачем же таймаут, если ему нужно по загрузке страницы? |
Ему вроде как задержка нужна.
|
Dilettante_Pro,
Смотрите https://learn.javascript.ru/onload-ondomcontentloaded к сожалению данные способы не гарантируют полный рендринг ( например если что то на странице подгружается ajax-ом) |
j0hnik
Спасибо! Задержка сгодится. Мне главное чтобы сама страничка более менее подгрузилась. Ведь всё равно пока не нажмёшь на OK у появившегося алерта, ничего нельзя сделать будет. Главное что за период задержки подгрузится сам HTML и не будет создаваться видимого эффекта "обрубленной" страницы :-) |
Часовой пояс GMT +3, время: 14:27. |