检测 HTML 何时完成加载并在页面上呈现



是否可以检测HTML何时完成加载并在页面上呈现? 如果是这样,如何?

该页面由HTML,对ajax的调用,从ajax调用接收数据,许多javascript内容和一些图像组成。 我想检测一切何时完成。 我不能做的是在最后贴一个函数调用,因为我不知道什么时候结束。

例如,页面有很多 ajax 样式元素,用户可以从中选择,即用户 1 的元素数量可能与用户 2 不同,甚至顺序也不同。

所以我不能做的是使用最后一个函数来模拟 HTML 渲染的结束,因为我不知道哪个函数将是最后一个函数。

回答你的问题在于最后几句话,你说你不知道结局在哪里,因为用户的选择。有两个自动事件可以将 JavaScript 绑定到。jQuery调用的$(document).ready()这意味着DOM已经准备好进行操作(在图像加载之前和外部脚本和CSS加载之后),以及更常见的身体onload(在jQuery中,这可以写为$(window).load()),它在获取所有静态资产后运行。您的 Ajax 调用将在至少 DOM 准备就绪后全部触发,并且没有定义所有调用之后会发生什么事件。为此,您需要自己跟踪它们。您可以使用"最后一匹离开谷仓的马"方法。在 Ajax 调用的末尾添加一点逻辑,看看它是否是最后一个,并引发一个名为"reallyAllDone"

>

的加载
<body onload="load()">

这将检测身体的内容何时加载。

$(document).ready

将帮助您了解 DOM 何时完成其事件并准备就绪

最新更新