#javascript #jquery #yui
#javascript #jquery #yui
Вопрос:
Я пытаюсь задержать событие onLoad, которое запускается. Есть ли способ отложить это событие, строго используя javascript на стороне клиента?
Комментарии:
1. Веская причина для задержки фактического события onload (или других аспектов завершения загрузки окна) заключается в тестировании, на случай, если задержка существенно повлияет на другие параметры страницы. Я только что нашел этот вопрос, ищущий именно это.
2. Веская причина для задержки фактического события onload — приложения WebAssembly для поисковых систем
Ответ №1:
Если вы поставите script
тег в конце body
подобного:
<body>
...
<script>
setTimeout(function(){
//deferred onload
}, 2000);
</script>
</body>
В этом случае функция будет выполнена через 2 секунды
Как сказано в моем комментарии ниже: вы не должны полагаться на задержку. Но используйте обратный вызов для определенного события. Если это невозможно, может быть лучшим плохим решением, это использовать setInterval с функцией, которая проверяет каждые X мсек, присутствует ли то, чего вы ждете, и запускает.
Комментарии:
1. нет, это не работает. setTimeout не задерживает запуск события onload.
2. Извините, это было непонятно, больше не используйте
onload
событие, но замените его этим методом, чтобы задержать запуск вашего кода.3. @Kunal вы не должны полагаться на задержку. Но используйте обратный вызов для определенного события. Если это невозможно, может быть лучшим плохим решением, это использовать
setInterval
с функцией, которая проверяет каждые X мсек, присутствует ли то, чего вы ждете, и запускает.
Ответ №2:
Нет причин задерживать событие onload. Может быть, вы хотите использовать window.загрузить вместо этого?
$(window).load(function(){
//your code here
});
Комментарии:
1. я хочу отложить событие onload.
2. В чем причина задержки события onLoad? Мне кажется, что было бы лучше дождаться onload, а затем отложить ваш код. Здесь я чего-то не понимаю.