当页面完全加载时,我需要执行一些JavaScript代码。这包括像图像这样的东西。

我知道您可以检查DOM是否准备好了,但我不知道这是否与页面完全加载时相同。


当前回答

完成@Matchu和@abSiddique的回答。

这样的:

window.addEventListener('load', (event) => {
  console.log('page is fully loaded');
});

与此相同,但使用onload事件处理程序属性:

window.onload = (event) => {
  console.log('page is fully loaded');
};

来源:

https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event

这里有一个活生生的例子:

https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event#live_example

其他回答

完成@Matchu和@abSiddique的回答。

这样的:

window.addEventListener('load', (event) => {
  console.log('page is fully loaded');
});

与此相同,但使用onload事件处理程序属性:

window.onload = (event) => {
  console.log('page is fully loaded');
};

来源:

https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event

这里有一个活生生的例子:

https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event#live_example

这里有一个用PrototypeJS来做的方法:

Event.observe(window, 'load', function(event) {
    // Do stuff
});

这叫做负荷。它在DOM ready出现之前就出现了,而DOM ready实际上是为了加载等待图像而创建的。

window.addEventListener('load', function () {
  alert("It's loaded!")
})

试试这段代码

document.onreadystatechange = function () {
  if (document.readyState == "complete") {
    initApplication();
  }
}

详情请访问https://developer.mozilla.org/en-US/docs/DOM/document.readyState

窗外。Onload事件将在加载所有内容时触发,包括图像等。

如果你想要你的js代码尽可能早地执行,你会想要检查DOM就绪状态,但你仍然需要访问DOM元素。