在 DOMContentLoaded 之前触发的事件

发布于 2024-12-09 09:40:29 字数 84 浏览 0 评论 0原文

在我的 Firefox 扩展中,我使用 DOMContentLoaded 来检测页面加载并插入 HTML。是否有在此之前触发的事件并且该文档当时仍然可用?

In my Firefox extension I am using DOMContentLoaded to detect page load and insert my HTML. Is there an event which triggers before this and still the document is available at that time?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

万劫不复 2024-12-16 09:40:29

注意:此答案指的是基于 XUL 的扩展。从 Firefox 57 开始,该技术已过时。此处提到的功能不再可供扩展使用。

有一个content-document-global-created通知在创建文档时,在添加任何内容之前发送出去(准确地说,当浏览器收到响应的 HTTP 标头并知道它不是重定向等时,就会发生这种情况)。这是您可以获取该文档的最早时间点。一旦 Gecko 完成下载文档内容,就会触发 DOMContentLoaded 事件,这是您可以访问完整 DOM 的早期点。中间还有很多其他事件,例如很多 进度侦听器事件 - 其中您使用哪个取决于您想要做什么,没有通用答案。

Note: This answer refers to XUL-based extensions. As of Firefox 57, this technology is obsolete. The functionality mentioned here is no longer available to extensions.

There is content-document-global-created notification that is sent out when a document is created, before any content is added to it (to be precise, it happens when the browser receives the HTTP headers of the response and knows that it isn't a redirect or such). That's the earliest point where you can get the document. The DOMContentLoaded event is fired once Gecko finishes downloading the contents of the document, that's the earlies point where you can access the complete DOM. In between there is a bunch of other events, e.g. lots of progress listener events - which one you use depends on what you are trying to do, there is no general answer.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文