Есть ли способ отложить событие window.onload? - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь создать всплывающее окно, которое автоматически появляется после задержки. это возможно через javascript? если да, то как мне внедрить это в мой код?

Вот ссылка на код, над которым я работаю https://jsfiddle.net/hk2808/7cs4xdmg/

function openPopup() {
  window.location.hash = 'openModal';
}

window.onload = openPopup;

Ответы [ 3 ]

1 голос
/ 14 апреля 2020

Вы можете использовать setTimeout. Я бы сделал более обобщенную c функцию, которая запускается при загрузке и просто вызову openPopup оттуда.

Попробуйте это:

function openPopup() {
  window.location.hash = 'openModal';

}


function onPageLoad() {
    setTimeout(() => {
    openPopup()
    }, 3000)
}

window.onload = onPageLoad;

Всплывающее окно загрузится через 3 секунды после загрузки например.

0 голосов
/ 14 апреля 2020

Нет, нет способа отложить загрузку окна. Вы можете попытаться добавить много изображений и других вещей, которые долго загружаются, но это не идеальное решение. Вместо этого вы можете использовать setTimeout для запуска кода через определенный промежуток времени.

setTimeout(function(){
   window.location.hash = 'openModal';
   //or whatever else you want to happen after 1 second
},1000);
//the 1000 means after 1000 miliseconds, or after 1 second.


Надеюсь, это поможет!

0 голосов
/ 14 апреля 2020

setTimeout сделает то, что вы хотите сделать

https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...