每个网页都有DOM和body元素吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每个网页都有DOM和body元素吗?相关的知识,希望对你有一定的参考价值。

我正在使用Stencil.js实现前端应用程序。我们打算将Stencil应用程序嵌套在Web应用程序的每个页面上,每个页面都使用不同的技术。我们有一些页面是Angular应用程序,其他页面是由React制作的,等等。

在Stencil应用程序中,我想修改背景网页上的“ body”元素,以便可以在不同时间禁用滚动条。我可以轻松地调用“ document.body”,但是我不知道这是否始终可用,具体取决于网页的类型。无论使用哪种技术,每个网页都包含DOM以及“ body”元素吗?

如果需要澄清这一点,我正在谈论的是在网络浏览器中加载的可视网页。

答案

通常来说是的,但是有例外。

document.body是一个吸气剂,每次您在代码中引用它时,它都会查找body元素。如果您的代码在创建body元素之前执行,或者即使有一个,也将获得null。您可能尚未准备好document.body的常见情况是head元素中有一个同步脚本标记,或者您的应用程序是设置为在加载页面之前执行的浏览器扩展。

以上是关于每个网页都有DOM和body元素吗?的主要内容,如果未能解决你的问题,请参考以下文章

javascript中获取dom元素高度和宽度

设置div 居中 和得到dom元素高度

为啥css要放在头部,js要放在body底部

JavaScript中,可以用元素的innerHTML直接添加子元素吗?

jQuery的DOM操作

客户端网页编程