[英]Document Object Model
问题很简单,但令我感到困惑的是,当我console.log(document.body)或(document.head)都可以正常工作时,但是当我使用document.script或document.html时,这两个都不能正常工作吗? 尽管所有这些东西都在文档中?
Q2)我可以写
document.getElementById('something')
但是为什么我不能写
document.body.getElementById('something')
尽管body在文档中,并且元素也在body标签中,但有时document.body在脚本的不同阶段工作
getElementById
是document
上的方法, document
是使用DOM中的Document
接口的对象。 它不是元素上的方法(来自DOM的Element
接口,以及来自HTML的HTMLElement
接口的专门化)。 document.body
是一个元素(一个HTMLBodyElement
,这是一个HTMLElement
,这是一个Element
),而不是文档。
有些方法(如querySelector
)都在这两种方法document
和元素,因为它是有道理的,他们是(一个元素上, querySelector
不仅外观元素中,而不是整个文件)。 但是getElementById
不是。 (可能是这样,但是当ID在整个文档中是唯一的时,将其范围限定为一个元素会有点奇怪。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.