HTML DOM Document 对象
Document 对象
每个载入浏览器的 HTML 文档都会成为 Document 对象。
Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。
提示:Document 对象是 Window 对象的一部分,可通过 window.document 属性对其进行访问。
IE: Internet Explorer, F: Firefox, O: Opera, W3C: W3C 标准.
Document 对象集合
集合 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
all[] | 提供对文档中所有 HTML 元素的访问。 | 4 | 1 | 9 | No |
anchors[] | 返回对文档中所有 Anchor 对象的引用。 | 4 | 1 | 9 | Yes |
applets | 返回对文档中所有 Applet 对象的引用。 | - | - | - | - |
forms[] | 返回对文档中所有 Form 对象引用。 | 4 | 1 | 9 | Yes |
images[] | 返回对文档中所有 Image 对象引用。 | 4 | 1 | 9 | Yes |
links[] | 返回对文档中所有 Area 和 Link 对象引用。 | 4 | 1 | 9 | Yes |
Document 对象属性
属性 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
body | 提供对 <body> 元素的直接访问。 对于定义了框架集的文档,该属性引用最外层的 <frameset>。 | ||||
cookie | 设置或返回与当前文档有关的所有 cookie。 | 4 | 1 | 9 | Yes |
domain | 返回当前文档的域名。 | 4 | 1 | 9 | Yes |
lastModified | 返回文档被最后修改的日期和时间。 | 4 | 1 | No | No |
referrer | 返回载入当前文档的文档的 URL。 | 4 | 1 | 9 | Yes |
title | 返回当前文档的标题。 | 4 | 1 | 9 | Yes |
URL | 返回当前文档的 URL。 | 4 | 1 | 9 | Yes |
Document 对象方法
方法 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
close() | 关闭用 document.open() 方法打开的输出流,并显示选定的数据。 | 4 | 1 | 9 | Yes |
getElementById() | 返回对拥有指定 id 的第一个对象的引用。 | 5 | 1 | 9 | Yes |
getElementsByName() | 返回带有指定名称的对象集合。 | 5 | 1 | 9 | Yes |
getElementsByTagName() | 返回带有指定标签名的对象集合。 | 5 | 1 | 9 | Yes |
open() | 打开一个流,以收集来自任何 document.write() 或 document.writeln() 方法的输出。 | 4 | 1 | 9 | Yes |
write() | 向文档写 HTML 表达式 或 JavaScript 代码。 | 4 | 1 | 9 | Yes |
writeln() | 等同于 write() 方法,不同的是在每个表达式之后写一个换行符。 | 4 | 1 | 9 | Yes |
Document 对象描述
HTMLDocument 接口对 DOM Document 接口进行了扩展,定义 HTML 专用的属性和方法。
很多属性和方法都是 HTMLCollection 对象(实际上是可以用数组或名称索引的只读数组),其中保存了对锚、表单、链接以及其他可脚本元素的引用。
这些集合属性都源自于 0 级 DOM。它们已经被 Document.getElementsByTagName() 所取代,但是仍然常常使用,因为他们很方便。
write() 方法值得注意,在文档载入和解析的时候,它允许一个脚本向文档中插入动态生成的内容。
注意,在 1 级 DOM 中,HTMLDocument 定义了一个名为 getElementById() 的非常有用的方法。在 2 级 DOM 中,该方法已经被转移到了 Document 接口,它现在由 HTMLDocument 继承而不是由它定义了。
XML DOM Document 对象
Document 对象代表整个 XML 文档。
Document 对象
Document 对象是一棵文档树的根,可为我们提供对文档数据的最初(或最顶层)的访问入口。
用于元素节点、文本节点、注释、处理指令等均无法存在于 document 之外,document 对象同样提供了创建这些对象的方法。Node 对象提供了一个 ownerDocument 属性,此属性可把它们与在其中创建它们的 Document 关联起来。
IE: Internet Explorer, F: Firefox, O: Opera, W3C: 万维网联盟 (因特网标准)
Document 对象的属性
属性 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
async | 规定 XML 文件的下载是否应当被同步处理。 | 5 | 1.5 | 9 | No |
childNodes | 返回属于文档的子节点的节点列表。 | 5 | 1 | 9 | Yes |
doctype | 返回与文档相关的文档类型声明 (DTD)。 | 6 | 1 | 9 | Yes |
documentElement | 返回文档的根节点 | 5 | 1 | 9 | Yes |
documentURI | 设置或返回文档的位置 | No | 1 | 9 | Yes |
domConfig | 返回normalizeDocument()被调用时所使用的配置 | No | Yes | ||
firstChild | 返回文档的首个子节点 | 5 | 1 | 9 | Yes |
implementation | 返回处理该文档的 DOMImplementation 对象。 | No | 1 | 9 | Yes |
inputEncoding | 返回用于文档的编码方式(在解析时)。 | No | 1 | No | Yes |
lastChild | 返回文档的最后一个子节点。 | 5 | 1 | 9 | Yes |
nodeName | 依据节点的类型返回其名称。 | 5 | 1 | 9 | Yes |
nodeType | 返回节点的节点类型。 | 5 | 1 | 9 | Yes |
nodeValue | 根据节点的类型来设置或返回节点的值。 | 5 | 1 | 9 | Yes |
strictErrorChecking | 设置或返回是否强制进行错误检查。 | No | 1 | No | Yes |
text | 返回节点及其后代的文本(仅用于 IE)。 | 5 | No | No | No |
xml | 返回节点及其后代的 XML(仅用于 IE)。 | 5 | No | No | No |
xmlEncoding | 返回文档的编码方法。 | No | 1 | No | Yes |
xmlStandalone | 设置或返回文档是否为 standalone。 | No | 1 | No | Yes |
xmlVersion | 设置或返回文档的 XML 版本。 | No | 1 | No | Yes |
Document 对象的方法
属性 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
adoptNode(sourcenode) | 从另一个文档向本文档选定一个节点,然后返回被选节点。 | No | Yes | ||
createAttribute(name) | 创建拥有指定名称的属性节点,并返回新的 Attr 对象。 | 6 | 1 | 9 | Yes |
createAttributeNS(uri,name) | 创建拥有指定名称和命名空间的属性节点,并返回新的 Attr 对象。 | 9 | Yes | ||
createCDATASection() | 创建 CDATA 区段节点。 | 5 | 1 | 9 | Yes |
createComment() | 创建注释节点。 | 6 | 1 | 9 | Yes |
createDocumentFragment() | 创建空的 DocumentFragment 对象,并返回此对象。 | 5 | 1 | 9 | Yes |
createElement() | 创建元素节点。 | 5 | 1 | 9 | Yes |
createElementNS() | 创建带有指定命名空间的元素节点。 | No | 1 | 9 | Yes |
createEvent() | 创建新的 Event 对象。 | Yes | |||
createEntityReference(name) | 创建 EntityReference 对象,并返回此对象。 | 5 | No | Yes | |
createExpression() | 创建一个XPath表达式以供稍后计算。 | Yes | |||
createProcessingInstruction() | 创建 ProcessingInstruction 对象,并返回此对象。 | 5 | 9 | Yes | |
createRange() | 创建 Range 对象,并返回此对象。 | No | Yes | ||
evaluate() | 计算一个 XPath 表达式。 | No | 1 | 9 | Yes |
createTextNode() | 创建文本节点。 | 5 | 1 | 9 | Yes |
getElementById() | 查找具有指定的唯一 ID 的元素。 | 5 | 1 | 9 | Yes |
getElementsByTagName() | 返回所有具有指定名称的元素节点。 | 5 | 1 | 9 | Yes |
getElementsByTagNameNS() | 返回所有具有指定名称和命名空间的元素节点。 | No | 1 | 9 | Yes |
importNode() | 把一个节点从另一个文档复制到该文档以便应用。 | 9 | Yes | ||
loadXML() | 通过解析XML标签字符串来组成文档。 | ||||
normalizeDocument() | No | Yes | |||
renameNode() | 重命名元素或者属性节点。 | No | Yes |
DocumentType 对象
每个文档均有一个 DOCTYPE 属性,此属性的值可为 null,也可是一个 DocumentType 对象。
DocumentType 对象可向为 XML 所定义的实体提供接口。
IE: Internet Explorer, F: Firefox, O: Opera, W3C: 万维网联盟 (因特网标准)
DocumentType 对象的属性
属性 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
entities | 可返回含有在 DTD 中所声明的实体的 NamedNodeMap | 6 | No | 9 | Yes |
internalSubset | 以字符串返回内部 DTD | No | No | No | Yes |
name | 返回 DTD 的名称 | 6 | 1 | 9 | Yes |
notations | 可返回含有在 DTD 中所声明的符号(notation)的 NamedNodeMap | 6 | No | 9 | Yes |
systemId | 可返回外部 DTD 的系统识别符 | No | 1 | 9 | Yes |