-
- All Known Subinterfaces:
-
Attr
,CDATASection
,CharacterData
,Comment
,Document
,DocumentFragment
,DocumentType
,Element
,Entity
,EntityReference
,HTMLAnchorElement
,HTMLAppletElement
,HTMLAreaElement
,HTMLBaseElement
,HTMLBaseFontElement
,HTMLBodyElement
,HTMLBRElement
,HTMLButtonElement
,HTMLDirectoryElement
,HTMLDivElement
,HTMLDListElement
,HTMLDocument
,HTMLElement
,HTMLFieldSetElement
,HTMLFontElement
,HTMLFormElement
,HTMLFrameElement
,HTMLFrameSetElement
,HTMLHeadElement
,HTMLHeadingElement
,HTMLHRElement
,HTMLHtmlElement
,HTMLIFrameElement
,HTMLImageElement
,HTMLInputElement
,HTMLIsIndexElement
,HTMLLabelElement
,HTMLLegendElement
,HTMLLIElement
,HTMLLinkElement
,HTMLMapElement
,HTMLMenuElement
,HTMLMetaElement
,HTMLModElement
,HTMLObjectElement
,HTMLOListElement
,HTMLOptGroupElement
,HTMLOptionElement
,HTMLParagraphElement
,HTMLParamElement
,HTMLPreElement
,HTMLQuoteElement
,HTMLScriptElement
,HTMLSelectElement
,HTMLStyleElement
,HTMLTableCaptionElement
,HTMLTableCellElement
,HTMLTableColElement
,HTMLTableElement
,HTMLTableRowElement
,HTMLTableSectionElement
,HTMLTextAreaElement
,HTMLTitleElement
HTMLTitleElement
,HTMLUListElement
,Notation
,ProcessingInstruction
,Text
,XPathNamespace
- 所有已知实现类:
-
IIOMetadataNode
public interface Node
Node
接口是整个文档对象模型的主要数据类型。 它表示文档树中的单个节点。 虽然实现Node
接口的所有对象都公开了处理子Node
方法,但并非所有实现Node
接口的对象都可能有子Node
。 例如,Text
节点可能没有子节点,并且向这些节点添加子节点会导致DOMException
被引发。字段
nodeName
,nodeValue
和attributes
包括作为一种机制来获取节点信息,而无需拆毁到特定的派生接口。 如果没有针对特定nodeType
的这些属性的明显映射(例如,对于nodeValue
为Element
或对于attributes
为Comment
),则返回null
。 请注意,专用接口可能包含其他更方便的机制来获取和设置相关信息。的值
Interface table Interface nodeName nodeValue attributesnodeName
,nodeValue
,和attributes
根据不同节点类型,如下所示:Attr
same asAttr.name
same asAttr.value
null
CDATASection
"#cdata-section"
same asCharacterData.data
, the content of the CDATA Sectionnull
Comment
"#comment"
same asCharacterData.data
, the content of the commentnull
Document
"#document"
null
null
DocumentFragment
"#document-fragment"
null
null
DocumentType
same asDocumentType.name
null
null
Element
same asElement.tagName
null
NamedNodeMap
Entity
entity namenull
null
EntityReference
name of entity referencednull
null
Notation
notation namenull
null
ProcessingInstruction
same asProcessingInstruction.target
same asProcessingInstruction.data
null
Text
"#text"
same asCharacterData.data
, the content of the text nodenull
-
-
字段汇总
字段 变量和类型 字段 描述 static short
ATTRIBUTE_NODE
该节点是Attr
。static short
CDATA_SECTION_NODE
该节点是CDATASection
。static short
COMMENT_NODE
该节点是Comment
。static short
DOCUMENT_FRAGMENT_NODE
该节点是DocumentFragment
。static short
DOCUMENT_NODE
该节点是Document
。static short
DOCUMENT_POSITION_CONTAINED_BY
该节点包含在参考节点中。static short
DOCUMENT_POSITION_CONTAINS
该节点包含引用节点。static short
DOCUMENT_POSITION_DISCONNECTED
两个节点断开连接。static short
DOCUMENT_POSITION_FOLLOWING
节点跟随参考节点。static short
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
先前与后续的确定是特定于实现的。static short
DOCUMENT_POSITION_PRECEDING
第二个节点位于参考节点之前。static short
DOCUMENT_TYPE_NODE
该节点是DocumentType
。static short
ELEMENT_NODE
该节点是Element
。static short
ENTITY_NODE
该节点是Entity
。static short
ENTITY_REFERENCE_NODE
该节点是EntityReference
。static short
NOTATION_NODE
该节点是Notation
。static short
PROCESSING_INSTRUCTION_NODE
该节点是ProcessingInstruction
。static short
TEXT_NODE
该节点是Text
节点。
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 Node
appendChild(Node newChild)
将节点newChild
添加到此节点的子级列表的末尾。Node
cloneNode(boolean deep)
返回此节点的副本,即用作节点的通用副本构造函数。short
compareDocumentPosition(Node other)
将参考节点(即调用此方法的节点)与节点(即作为参数传递的节点)相对于它们在文档中的位置以及根据文档顺序进行比较。NamedNodeMap
getAttributes()
NamedNodeMap
包含此节点的属性(如果是Element
)或null
。String
getBaseURI()
如果实现无法获取绝对URI,则此节点的绝对基URI或null
。NodeList
getChildNodes()
包含此节点的所有子节点的NodeList
。Object
getFeature(String feature, String version)
此方法返回一个专用对象,该对象实现指定功能和版本的专用API,如中所述。Node
getFirstChild()
这个节点的第一个孩子。Node
getLastChild()
此节点的最后一个子节点。String
getLocalName()
返回此节点的限定名称的本地部分。String
getNamespaceURI()
此节点的名称空间URI,如果未指定,null
(请参阅null
)。Node
getNextSibling()
紧跟此节点的节点。String
getNodeName()
此节点的名称,具体取决于其类型; 见上表。short
getNodeType()
表示底层对象类型的代码,如上所述。String
getNodeValue()
该节点的值,取决于其类型; 见上表。Document
getOwnerDocument()
与此节点关联的Document
对象。Node
getParentNode()
此节点的父节点。String
getPrefix()
此节点的名称空间前缀,如果未指定,null
。Node
getPreviousSibling()
紧接在此节点之前的节点。String
getTextContent()
此属性返回此节点及其后代的文本内容。Object
getUserData(String key)
检索与此节点上的键关联的对象。boolean
hasAttributes()
返回此节点(如果它是元素)是否具有任何属性。boolean
hasChildNodes()
返回此节点是否包含任何子节点。Node
insertBefore(Node newChild, Node refChild)
插入节点newChild
现有的子节点之前refChild
。boolean
isDefaultNamespace(String namespaceURI)
此方法检查指定的namespaceURI
是否为默认命名空间。boolean
isEqualNode(Node arg)
测试两个节点是否相等。boolean
isSameNode(Node other)
返回此节点是否与给定节点相同的节点。boolean
isSupported(String feature, String version)
测试DOM实现是否实现特定功能,并且此节点支持该功能,如中所述。String
lookupNamespaceURI(String prefix)
从该节点开始查找与给定前缀关联的名称空间URI。String
lookupPrefix(String namespaceURI)
从该节点开始查找与给定名称空间URI关联的前缀。void
normalize()
将所有Text
节点放在此Node
下方的子树的完整深度(包括属性节点)中,形成“正常”形式,其中只有结构(例如,元素,注释,处理指令,CDATA部分和实体引用)将Text
节点分开,即,既没有相邻的Text
节点,也没有空的Text
节点。Node
removeChild(Node oldChild)
从子项列表中删除oldChild
指示的子节点,并将其返回。Node
replaceChild(Node newChild, Node oldChild)
替换子节点oldChild
与newChild
儿童的名单,并返回oldChild
节点。void
setNodeValue(String nodeValue)
该节点的值,取决于其类型; 见上表。void
setPrefix(String prefix)
此节点的名称空间前缀,如果未指定,null
。void
setTextContent(String textContent)
此属性返回此节点及其后代的文本内容。Object
setUserData(String key, Object data, UserDataHandler handler)
将对象与此节点上的键关联。
-
-
-
字段详细信息
-
ELEMENT_NODE
static final short ELEMENT_NODE
该节点是Element
。- 另请参见:
- 常数字段值
-
ATTRIBUTE_NODE
static final short ATTRIBUTE_NODE
该节点是Attr
。- 另请参见:
- 常数字段值
-
TEXT_NODE
static final short TEXT_NODE
该节点是Text
节点。- 另请参见:
- 常数字段值
-
CDATA_SECTION_NODE
static final short CDATA_SECTION_NODE
该节点是CDATASection
。- 另请参见:
- 常数字段值
-
ENTITY_REFERENCE_NODE
static final short ENTITY_REFERENCE_NODE
该节点是EntityReference
。- 另请参见:
- 常数字段值
-
ENTITY_NODE
static final short ENTITY_NODE
该节点是Entity
。- 另请参见:
- 常数字段值
-
PROCESSING_INSTRUCTION_NODE
static final short PROCESSING_INSTRUCTION_NODE
该节点是ProcessingInstruction
。- 另请参见:
- 常数字段值
-
COMMENT_NODE
static final short COMMENT_NODE
该节点是Comment
。- 另请参见:
- 常数字段值
-
DOCUMENT_NODE
static final short DOCUMENT_NODE
该节点是Document
。- 另请参见:
- 常数字段值
-
DOCUMENT_TYPE_NODE
static final short DOCUMENT_TYPE_NODE
该节点是DocumentType
。- 另请参见:
- 常数字段值
-
DOCUMENT_FRAGMENT_NODE
static final short DOCUMENT_FRAGMENT_NODE
该节点是DocumentFragment
。- 另请参见:
- 常数字段值
-
NOTATION_NODE
static final short NOTATION_NODE
该节点是Notation
。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_DISCONNECTED
static final short DOCUMENT_POSITION_DISCONNECTED
两个节点断开连接。 断开的节点之间的顺序始终是特定于实现的。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_PRECEDING
static final short DOCUMENT_POSITION_PRECEDING
第二个节点位于参考节点之前。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_FOLLOWING
static final short DOCUMENT_POSITION_FOLLOWING
节点跟随参考节点。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_CONTAINS
static final short DOCUMENT_POSITION_CONTAINS
该节点包含引用节点。 包含的节点也始终在前面。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_CONTAINED_BY
static final short DOCUMENT_POSITION_CONTAINED_BY
该节点包含在参考节点中。 包含的节点也始终跟随。- 另请参见:
- 常数字段值
-
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
static final short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
先前与后续的确定是特定于实现的。- 另请参见:
- 常数字段值
-
-
方法详细信息
-
getNodeName
String getNodeName()
此节点的名称,具体取决于其类型; 见上表。
-
getNodeValue
String getNodeValue() throws DOMException
该节点的值,取决于其类型; 见上表。 当它被定义为null
,将其设置为无效,包括节点是否为只读。- 异常
-
DOMException
- DOMSTRING_SIZE_ERR:在实现平台上返回的字符超过DOMString
变量时DOMString
。
-
setNodeValue
void setNodeValue(String nodeValue) throws DOMException
该节点的值,取决于其类型; 见上表。 当它被定义为null
,将其设置为无效,包括节点是否为只读。- 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:当节点是只读且未定义为null
。
-
getNodeType
short getNodeType()
表示底层对象类型的代码,如上所述。
-
getParentNode
Node getParentNode()
此节点的父节点。 所有节点,除了Attr
,Document
,DocumentFragment
,Entity
和Notation
可以有父。 但是,如果一个节点刚刚创建但尚未添加到树中,或者已从树中删除,则为null
。
-
getChildNodes
NodeList getChildNodes()
包含此节点的所有子节点的NodeList
。 如果没有子节点,则这是一个NodeList
包含节点的NodeList
。
-
getFirstChild
Node getFirstChild()
这个节点的第一个孩子。 如果没有这样的节点,则返回null
。
-
getLastChild
Node getLastChild()
此节点的最后一个子节点。 如果没有此类节点,则返回null
。
-
getPreviousSibling
Node getPreviousSibling()
紧接在此节点之前的节点。 如果没有这样的节点,则返回null
。
-
getNextSibling
Node getNextSibling()
紧跟此节点的节点。 如果没有这样的节点,则返回null
。
-
getAttributes
NamedNodeMap getAttributes()
NamedNodeMap
包含此节点的属性(如果是Element
)或null
。
-
getOwnerDocument
Document getOwnerDocument()
与此节点关联的Document
对象。 这也是用于创建新节点的Document
对象。 当该节点是Document
或DocumentType
,其不与任何使用Document
然而,这是null
。- 从以下版本开始:
- 1.4,DOM Level 2
-
insertBefore
Node insertBefore(Node newChild, Node refChild) throws DOMException
插入节点newChild
现有的子节点之前refChild
。 如果refChild
是null
,newChild
在子项列表的末尾插入newChild
。
如果newChild
是DocumentFragment
对象,则在refChild
之前以相同的顺序插入其所有子refChild
。 如果newChild
已经在树中,则首先将其删除。注意:在自身之前插入节点取决于实现。
- 参数
-
newChild
- 要插入的节点。 -
refChild
- 引用节点,即必须在其之前插入新节点的节点。 - 结果
- 正在插入的节点。
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
类型的newChild
节点,或者要插入的节点是此节点的祖先或此节点本身之一,或者此节点的类型是Document
此Document
并且DOM应用程序尝试插入第二个DocumentType
或Element
节点。
WRONG_DOCUMENT_ERR:如果newChild
是从与创建此节点的文档不同的文档创建的,则newChild
此问题。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的或者正在插入的节点的父节点是只读的,则引发此异常。
NOT_FOUND_ERR:如果refChild
不是此节点的子节点,则refChild
此refChild
。
NOT_SUPPORTED_ERR:如果此节点的类型为Document
,则如果DOM实现不支持插入DocumentType
或Element
节点,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM Level 3
-
replaceChild
Node replaceChild(Node newChild, Node oldChild) throws DOMException
替换子节点oldChild
与newChild
儿童的名单,并返回oldChild
节点。
如果newChild
是DocumentFragment
对象,则oldChild
将替换为所有DocumentFragment
子项,这些子项以相同的顺序插入。 如果newChild
已经在树中,则首先将其删除。注意:用自身替换节点取决于实现。
- 参数
-
newChild
- 要放入子列表的新节点。 -
oldChild
- 列表中要替换的节点。 - 结果
- 节点被替换。
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
节点类型的newChild
节点,或者要放入的节点是此节点的祖先或此节点本身之一,或者此节点是否为类型,则newChild
此newChild
Document
和替换操作的结果将在Document
节点上添加第二个DocumentType
或Element
。
WRONG_DOCUMENT_ERR:如果newChild
是从与创建此节点的文档不同的文档创建的,则newChild
此问题。
NO_MODIFICATION_ALLOWED_ERR:如果此节点或新节点的父节点是只读的,则引发此异常。
NOT_FOUND_ERR:如果oldChild
不是此节点的子节点,则oldChild
此oldChild
。
NOT_SUPPORTED_ERR:如果此节点的类型为Document
,则如果DOM实现不支持替换DocumentType
子级或Element
子Document
,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM Level 3
-
removeChild
Node removeChild(Node oldChild) throws DOMException
从子项列表中删除由oldChild
指示的子节点,并将其返回。- 参数
-
oldChild
- 正在删除的节点。 - 结果
- 节点已删除。
- 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发此异常。
NOT_FOUND_ERR:如果oldChild
不是此节点的子节点,则oldChild
此oldChild
。
NOT_SUPPORTED_ERR:如果此节点的类型为Document
,则如果DOM实现不支持删除DocumentType
子DocumentType
或Element
子节点,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM Level 3
-
appendChild
Node appendChild(Node newChild) throws DOMException
将节点newChild
添加到此节点的子级列表的末尾。 如果newChild
已在树中,则首先将其删除。- 参数
-
newChild
- 要添加的节点。如果是DocumentFragment
对象,则将文档片段的全部内容移动到此节点的子列表中 - 结果
- 节点已添加。
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
类型的newChild
节点,或者要追加的节点是此节点的祖先或此节点本身之一,或者此节点的类型是Document
此Document
并且DOM应用程序尝试追加第二个DocumentType
或Element
节点。
WRONG_DOCUMENT_ERR:如果newChild
是从与创建此节点的文档不同的文档创建的,则newChild
此问题。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,或者如果要插入的节点的前一个父节点是只读的,则引发此异常。
NOT_SUPPORTED_ERR:如果newChild
节点是一个孩子Document
节点,此异常可能,如果DOM实现不支持取消的提出DocumentType
儿童或Element
孩子。 - 从以下版本开始:
- 1.4,DOM Level 3
-
hasChildNodes
boolean hasChildNodes()
返回此节点是否包含任何子节点。- 结果
- 返回
true
如果该节点的任何孩子,false
否则。
-
cloneNode
Node cloneNode(boolean deep)
返回此节点的副本,即用作节点的通用副本构造函数。 重复节点没有父节点(parentNode
是null
),没有用户数据。 与导入的节点关联的用户数据不会被转移。 但是,如果已指定任何UserDataHandlers
以及相关数据,则在此方法返回之前将使用适当的参数调用这些处理程序。
克隆Element
复制所有属性及其值,包括由XML处理器生成的用于表示默认属性的属性,但此方法不会复制它包含的任何子项,除非它是深度克隆。 这包括Element
包含的文本,因为该文本包含在子Text
节点中。 直接克隆Attr
,而不是作为Element
克隆操作的一部分克隆,返回指定的属性(specified
是true
)。 克隆Attr
总是克隆它的孩子,因为它们代表它的价值,无论这是否是一个深刻的克隆。 克隆EntityReference
自动构建其子树,如果相应的Entity
可用,无论这是否是深度克隆。 克隆任何其他类型的节点只会返回此节点的副本。
请注意,克隆不可变子树会导致可变副本,但EntityReference
克隆的子项是只读的。 此外,还指定了未指定的Attr
节点的克隆。 而且,克隆Document
,DocumentType
,Entity
和Notation
节点实现有关。- 参数
-
deep
- 如果是true
,则递归克隆指定节点下的子树; 如果是false
,则仅克隆节点本身(及其属性,如果它是Element
)。 - 结果
- 重复的节点。
-
normalize
void normalize()
将所有Text
节点放在此Node
下面的子树的完整深度(包括属性节点)中,形成“正常”形式,其中只有结构(例如,元素,注释,处理指令,CDATA部分和实体引用)将Text
节点分开,即,既没有相邻的Text
节点,也没有空的Text
节点。 这可以用于确保文档的DOM视图与保存和重新加载文档的DOM视图相同,并且在依赖于特定文档树结构的操作(例如XPointer [ XPointer ]查找)是使用。 如果附加到Node.ownerDocument
的DOMConfiguration
对象的参数“normalize-characters”为true
,则此方法还将完全规范化Text
节点的字符。注意:如果文档包含
CDATASections
,则仅标准化操作可能不够,因为XPointers不区分Text
节点和CDATASection
节点。- 从以下版本开始:
- 1.4,DOM Level 3
-
isSupported
boolean isSupported(String feature, String version)
测试DOM实现是否实现特定功能,并且此节点支持该功能,如中所述。- 参数
-
feature
- 要测试的功能的名称。 -
version
- 这是要测试的功能的版本号。 - 结果
- 返回
true
是否支持此节点上,指定的功能false
否则。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getNamespaceURI
String getNamespaceURI()
此节点的名称空间URI,如果未指定,null
(请参阅null
)。
这不是基于对范围中的命名空间声明的检查进行命名空间查找的结果的计算值。 它只是创建时给出的名称空间URI。
对于除ELEMENT_NODE
和ATTRIBUTE_NODE
以外的任何类型的节点以及使用DOM Level 1方法创建的节点(例如Document.createElement()
,此值始终为null
。注意:根据XML规范[ XML Namespaces ]中的命名空间,属性不会从其附加的元素继承其命名空间。 如果未明确为属性指定名称空间,则它根本没有名称空间。
- 从以下版本开始:
- 1.4,DOM Level 2
-
getPrefix
String getPrefix()
此节点的名称空间前缀,如果未指定,null
。 当它被定义为null
,将其设置为无效,包括节点是否为只读。
请注意,在允许的情况下,设置此属性会更改nodeName
属性,该属性包含限定名称,以及适用时Element
和Attr
接口的tagName
和name
属性。
将前缀设置为null
使其未指定,将其设置为空字符串是依赖于实现的。
另请注意,更改已知具有默认值的属性的前缀不会使新属性显示默认值并显示原始前缀,因为namespaceURI
和localName
不会更改。
比其他任何类型的节点ELEMENT_NODE
个ATTRIBUTE_NODE
带有DOM 1级方法创建和节点,例如createElement
从Document
接口,这始终是null
。- 从以下版本开始:
- 1.4,DOM Level 2
-
setPrefix
void setPrefix(String prefix) throws DOMException
此节点的名称空间前缀,如果未指定,null
。 当它被定义为null
,将其设置为无效,包括节点是否为只读。
请注意,在允许的情况下,设置此属性会更改nodeName
属性,该属性包含限定名称,以及适用时Element
和Attr
接口的tagName
和name
属性。
将前缀设置为null
使其未指定,将其设置为空字符串是依赖于实现的。
另请注意,更改已知具有默认值的属性的前缀不会使新属性显示默认值并显示原始前缀,因为namespaceURI
和localName
不会更改。
比其他任何类型的节点ELEMENT_NODE
个ATTRIBUTE_NODE
带有DOM 1级方法创建和节点,例如createElement
从Document
接口,这始终是null
。- 异常
-
DOMException
- INVALID_CHARACTER_ERR:如果指定的前缀根据Document.xmlVersion
属性中指定的XML版本包含非法字符,则Document.xmlVersion
此Document.xmlVersion
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发此异常。
NAMESPACE_ERR:若指定prefix
每在XML规范中的命名空间畸形,如果namespaceURI
此节点的是null
,如果指定的前缀为“xml”和namespaceURI
该节点的距离“不同http://www.w3.org/XML/1998/namespace ”时,如果该节点是属性和指定的前缀为“xmlns”,此节点的namespaceURI
与“ http://www.w3.org/2000/xmlns/ ”不同,或者此节点是属性且此节点的qualifiedName
为“xmlns”[ XML Namespaces ]。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getLocalName
String getLocalName()
返回此节点的限定名称的本地部分。
对于除ELEMENT_NODE
和ATTRIBUTE_NODE
之外的任何类型的节点以及使用DOM Level 1方法创建的节点,例如Document.createElement()
,这始终为null
。- 从以下版本开始:
- 1.4,DOM Level 2
-
hasAttributes
boolean hasAttributes()
返回此节点(如果它是元素)是否具有任何属性。- 结果
- 返回
true
如果此节点具有任何属性,false
否则。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getBaseURI
String getBaseURI()
如果实现无法获取绝对URI,则此节点的绝对基URI或null
。 该值的计算如下所述。 但是,当Document
支持“HTML”[ DOM Level 2 HTML ]功能时,首先使用HTML BASE元素的href属性值(如果有)计算基URI,否则使用Document
接口的documentURI
属性值计算基URI。- 从以下版本开始:
- 1.5,DOM Level 3
-
compareDocumentPosition
short compareDocumentPosition(Node other) throws DOMException
将参考节点(即调用此方法的节点)与节点(即作为参数传递的节点)相对于它们在文档中的位置以及根据文档顺序进行比较。- 参数
-
other
- 要与参考节点进行比较的节点。 - 结果
- 返回节点相对于参考节点的定位方式。
- 异常
-
DOMException
- NOT_SUPPORTED_ERR:当比较节点来自不协调的不同DOM实现时,返回一致的特定于实现的结果。 - 从以下版本开始:
- 1.5,DOM Level 3
-
getTextContent
String getTextContent() throws DOMException
此属性返回此节点及其后代的文本内容。 当它被定义为null
,设置它无效。 在设置时,此节点可能具有的任何可能子节点将被删除,如果新字符串不为空或null
,则替换为包含此属性设置为的字符串的单个Text
节点。
获取时,不执行序列化,返回的字符串不包含任何标记。 不执行空格规范化,返回的字符串不包含元素内容中的空格(请参阅属性Text.isElementContentWhitespace
)。 类似地,在设置时,也不执行解析,输入字符串被视为纯文本内容。
返回的字符串由此节点的文本内容组成,具体取决于其类型,如下所示: Node/Content table Node type Content ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE concatenation of thetextContent
attribute value of every child node, excluding COMMENT_NODE and PROCESSING_INSTRUCTION_NODE nodes. This is the empty string if the node has no children. TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODEnodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null- 异常
-
DOMException
- DOMSTRING_SIZE_ERR:在实现平台上返回的字符超过DOMString
变量时会引发更多字符。 - 从以下版本开始:
- 1.5,DOM Level 3
-
setTextContent
void setTextContent(String textContent) throws DOMException
此属性返回此节点及其后代的文本内容。 当它被定义为null
,设置它无效。 在设置时,此节点可能具有的任何可能子节点将被删除,如果新字符串不为空或null
,则替换为包含此属性设置为的字符串的单个Text
节点。
获取时,不执行序列化,返回的字符串不包含任何标记。 不执行空格规范化,返回的字符串不包含元素内容中的空格(请参阅属性Text.isElementContentWhitespace
)。 类似地,在设置时,也不执行解析,输入字符串被视为纯文本内容。
返回的字符串由此节点的文本内容组成,具体取决于其类型,如下所示: Node/Content table Node type Content ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE concatenation of thetextContent
attribute value of every child node, excluding COMMENT_NODE and PROCESSING_INSTRUCTION_NODE nodes. This is the empty string if the node has no children. TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODEnodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null- 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:节点只读时引发。 - 从以下版本开始:
- 1.5,DOM Level 3
-
isSameNode
boolean isSameNode(Node other)
返回此节点是否与给定节点相同的节点。
此方法提供了一种方法来确定实现返回的两个引用是否引用相同的对象Node
。 当两个Node
引用是对同一对象的引用时,即使通过代理,引用也可以完全互换使用,这样所有属性都具有相同的值,并且在任一引用上调用相同的DOM方法总是具有完全相同的效果。- 参数
-
other
- 要测试的节点。 - 结果
- 返回
true
如果节点是相同的,false
否则。 - 从以下版本开始:
- 1.5,DOM Level 3
-
lookupPrefix
String lookupPrefix(String namespaceURI)
从该节点开始查找与给定名称空间URI关联的前缀。 此方法将忽略默认的名称空间声明。
有关此方法使用的算法的详细信息,请参阅。- 参数
-
namespaceURI
- 要查找的名称空间URI。 - 结果
- 如果找到则返回关联的命名空间前缀,如果未找到,则返回
null
。 如果多个前缀与名称空间前缀相关联,则返回的名称空间前缀与实现有关。 - 从以下版本开始:
- 1.5,DOM Level 3
-
isDefaultNamespace
boolean isDefaultNamespace(String namespaceURI)
此方法检查指定的namespaceURI
是否为默认命名空间。- 参数
-
namespaceURI
- 要查找的名称空间URI。 - 结果
- 返回
true
如果指定namespaceURI
是默认的命名空间,false
否则。 - 从以下版本开始:
- 1.5,DOM Level 3
-
lookupNamespaceURI
String lookupNamespaceURI(String prefix)
从该节点开始查找与给定前缀关联的名称空间URI。
有关此方法使用的算法的详细信息,请参阅。- 参数
-
prefix
- 要查找的前缀。 如果此参数为null
,则该方法将返回默认名称空间URI(如果有)。 - 结果
- 如果未找到,则返回关联的命名空间URI或
null
。 - 从以下版本开始:
- 1.5,DOM Level 3
-
isEqualNode
boolean isEqualNode(Node arg)
测试两个节点是否相等。
此方法测试节点的相等性,而不是相同性(即,两个节点是否是对同一对象的引用),可以使用Node.isSameNode()
进行测试。 所有相同的节点也将相等,但反之则不一样。
当且仅当满足以下条件时,两个节点相等:- 这两个节点属于同一类型。
- 以下字符串属性相等:
nodeName
,localName
,namespaceURI
,prefix
,nodeValue
。 这是:它们都是null
,或者它们具有相同的长度并且是字符相同的字符。 -
attributes
NamedNodeMaps
是平等的。 这是:它们都是null
,或者它们具有相同的长度,并且对于存在于一个映射中的每个节点,存在于另一个映射中并且相等的节点,但不一定在相同的索引处。 -
childNodes
NodeLists
是平等的。 这是:它们都是null
,或者它们具有相同的长度并且在相同的索引处包含相等的节点。 注意,规范化会影响平等; 为避免这种情况,应在比较之前对节点进行标准化。
要使两个DocumentType
节点相等,还必须满足以下条件:- 以下字符串属性相等:
publicId
,systemId
,internalSubset
。 -
entities
NamedNodeMaps
是相同的。 -
notations
NamedNodeMaps
是平等的。
在另一方面,下列不影响平等:在ownerDocument
,baseURI
,并parentNode
属性,则specified
属性为Attr
节点上,schemaTypeInfo
属性为Attr
个Element
节点上,Text.isElementContentWhitespace
属性为Text
的节点,以及任何用户数据或在节点上注册的事件侦听器。注意:作为一般规则,考虑到相等性检查,上述描述中未提及的任何内容都不重要。 请注意,此规范的未来版本可能会考虑更多属性,并且预计会相应地更新符合此规范的实现。
- 参数
-
arg
- 用于比较相等性的节点。 - 结果
- 返回
true
如果节点相等,false
否则。 - 从以下版本开始:
- 1.5,DOM Level 3
-
getFeature
Object getFeature(String feature, String version)
此方法返回一个专用对象,该对象实现指定功能和版本的专用API,如中所述。 专用对象也可以通过使用特定于绑定的铸造方法来获得,但不一定是预期的,如在中所讨论的。 此方法还允许实现提供不支持Node
接口的专用对象。- 参数
-
feature
- 请求的功能的名称。 请注意,将忽略该特征名称前面的任何加号“+”,因为它在此方法的上下文中不重要。 -
version
- 这是要测试的功能的版本号。 - 结果
- 返回实现指定功能和版本(如果有)的专用API的对象,如果没有实现与该功能关联的接口的对象,则
null
。 如果此方法返回的DOMObject
实现了Node
接口,则它必须委托给主核心Node
并且不返回与主核心Node
不一致的结果,例如attributes,childNodes等。 - 从以下版本开始:
- 1.5,DOM Level 3
-
setUserData
Object setUserData(String key, Object data, UserDataHandler handler)
将对象与此节点上的键关联。 稍后可以通过使用相同的密钥调用getUserData
从该节点检索该对象。- 参数
-
key
- 将对象关联到的键。 -
data
- 要与给定密钥关联的对象,或null
以删除与该密钥的任何现有关联。 -
handler
- 与该密钥关联的处理程序,或null
。 - 结果
- 返回先前与此节点上给定键关联的
null
如果没有,则返回DOMUserData
。 - 从以下版本开始:
- 1.5,DOM Level 3
-
-