这个问题就像这里和网络上的无数其他问题一样 - 如何检查 DOM 是否已加载到 Javascript 中?但这里有一个问题:
- 不使用 jQuery 等框架;
- 不知道您的脚本是通过静态放置的
<script>
标记加载的,还是在 DOM 加载之后很久之后通过其他一些 Javascript 加载的。
这可以或多或少地可靠地完成并且具有跨浏览器兼容性吗?
补充: 让我澄清一下:我正在编写一个独立的 .JS 文件,它可以包含在任意网页中。我想在 DOM 加载 后 执行代码。但我不知道我的脚本将 如何 包含在内。可以通过放置 <script>
标签(在这种情况下,传统的 onload
或 DOM 就绪解决方案将起作用);或者它可以通过 AJAX 或其他一些方式加载,在 DOM 加载之后很久(因此前面提到的解决方案永远不会触发)。
原文由 Vilx- 发布,翻译遵循 CC BY-SA 4.0 许可协议
document.readyState
属性可用于检查文档是否准备就绪。来自 MDN:代码示例: