window.onload или window.addEventListener?
window.onload = main(); или
window.addEventListener("load", main);
Когда я начал изучать js мне показали второй вариант который я постоянно и использую, но в интернетах рекомендуют первый вариант. Так какой вариант запуска кода после загрузки страницы все таки лучше или это одно и тоже? |
ZingerY, addEventListener используется для нескольких обработчиков. Свойство onload, конечно, использовать удобнее, но есть вероятность случайно перезаписать его.
В общем, onload - это если Вам нужен только один обработчик. К примеру:
window.onload = function() {
alert(1);
};
window.onload = function() {
alert(2);
};
//Выведется только "2", так как идёт перезапись свойства.
window.addEventListener('load', function() {
alert(1);
});
window.addEventListener('load', function() {
alert(2);
});
//Выполнятся оба обработчика
А если по делу, то для отлова загрузки документа, я бы Вам советовал использовать DOMContentLoaded, так как onload срабатывает только после окончания загрузки всех изображений и т.д.
window.addEventListener('DOMContentLoaded', function() {
alert('Ready!');
});
Цитата:
Ну а если говорить об удобстве, то - первый. |
Ruslan_xDD,
Большое спасибо за подробные разъяснения! Теперь благодаря вам мои странички будут загружаться намного быстрее) |
Ruslan_xDD,
DOMContentLoaded, то же самое что и document.ready в jquery? |
hhh,
:yes: |
hhh, да, аналогично вставки скриптов в конец body.
|
| Часовой пояс GMT +3, время: 15:00. |