我正在阅读Mozilla's Introduction to DOM,并发现他们的一个例子很有趣 - body
作为document
的属性出现。这对我来说是不典型的,因为我只看到了使用get
访问节点的示例。
我尝试了三种不同的方式来访问body
的{{1}}元素,
document
并发现Mozilla中显示的示例是一个很好的速记(第一行)。
此时,我觉得我可以用这个速记简单地链节点,但发现它除了document.body.appendChild(_someNode_)
document['body'].appendChild(_someNode_)
document.getElementsByTagName('body')[0].appendChild(_someNode_)
之外没有被定义。
以下是一个例子:
body
这里发生了什么?
答案 0 :(得分:0)
Document对象很特殊。它有一个名为body的属性,可返回<body>
元素,但一般情况下,您必须使用getElementsByTagName()
及其朋友。
答案 1 :(得分:0)
有些标签在document
中获得了自己的属性,但它们很少见,在某些情况下依赖于浏览器。一个示例是document.forms
,其中包含所有表单标记的集合,以及document.frames
,其中包含页面包含的al帧和iframe的集合。
但是你应该避免使用这些属性,而是使用.getElementById()
,.getElementsByTagName()
,以及更新近且多才多艺的.querySelector()
和.querySelectorAll()