-
- All Known Subinterfaces:
-
Attr
,CDATASection
,CharacterData
,Comment
,Detail
,DetailEntry
,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
HTMLSelectElement
,HTMLStyleElement
,HTMLTableCaptionElement
,HTMLTableCellElement
,HTMLTableColElement
,HTMLTableElement
,HTMLTableRowElement
,HTMLTableSectionElement
,HTMLTextAreaElement
,HTMLTitleElement
,HTMLUListElement
,Node
,Notation
,ProcessingInstruction
,SOAPBody
,SOAPBodyElement
,SOAPElement
,SOAPEnvelope
,SOAPFault
,SOAPFaultElement
,SOAPHeader
,SOAPHeaderElement
,Text
,Text
,XPathNamespace
- 所有已知实现类:
-
IIOMetadataNode
,SOAPPart
public interface 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
-
-
Field Summary
Fields Modifier and Type Field 描述 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
节点。
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 Node
appendChild(Node newChild)
将节点newChild
添加到此节点的子节点列表的末尾。Node
cloneNode(boolean deep)
返回此节点的副本,即,作为节点的通用拷贝构造函数。short
compareDocumentPosition(Node other)
将参考节点,即将被调用此方法的节点与文档中的位置相关联的节点(即作为参数传递的节点)进行比较。NamedNodeMap
getAttributes()
ANamedNodeMap
包含该节点的属性(如果它是一个Element
)或null
。String
getBaseURI()
该节点的绝对基本URI或null
如果实现无法获取绝对URI。NodeList
getChildNodes()
ANodeList
包含此节点的所有子节点。Object
getFeature(String feature, String version)
该方法返回一个专门的对象,该对象实现指定的特征和版本的专门API,如Node
getFirstChild()
这个节点的第一个孩子。Node
getLastChild()
这个节点的最后一个孩子。String
getLocalName()
返回此节点的限定名称的本地部分。String
getNamespaceURI()
该节点的命名空间URI,如果未指定,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()
将Node
(包括属性节点)下的子树的全部深度全部Text
在“正常”形式中,其中只有结构(例如元素,注释,处理指令,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
。- 另请参见:
- Constant Field Values
-
ATTRIBUTE_NODE
static final short ATTRIBUTE_NODE
该节点是一个Attr
。- 另请参见:
- Constant Field Values
-
TEXT_NODE
static final short TEXT_NODE
节点是一个Text
节点。- 另请参见:
- Constant Field Values
-
CDATA_SECTION_NODE
static final short CDATA_SECTION_NODE
该节点是一个CDATASection
。- 另请参见:
- Constant Field Values
-
ENTITY_REFERENCE_NODE
static final short ENTITY_REFERENCE_NODE
该节点是一个EntityReference
。- 另请参见:
- Constant Field Values
-
ENTITY_NODE
static final short ENTITY_NODE
节点是一个Entity
。- 另请参见:
- Constant Field Values
-
PROCESSING_INSTRUCTION_NODE
static final short PROCESSING_INSTRUCTION_NODE
节点是一个ProcessingInstruction
。- 另请参见:
- Constant Field Values
-
COMMENT_NODE
static final short COMMENT_NODE
该节点是一个Comment
。- 另请参见:
- Constant Field Values
-
DOCUMENT_NODE
static final short DOCUMENT_NODE
该节点是一个Document
。- 另请参见:
- Constant Field Values
-
DOCUMENT_TYPE_NODE
static final short DOCUMENT_TYPE_NODE
该节点是一个DocumentType
。- 另请参见:
- Constant Field Values
-
DOCUMENT_FRAGMENT_NODE
static final short DOCUMENT_FRAGMENT_NODE
节点是一个DocumentFragment
。- 另请参见:
- Constant Field Values
-
NOTATION_NODE
static final short NOTATION_NODE
该节点是一个Notation
。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_DISCONNECTED
static final short DOCUMENT_POSITION_DISCONNECTED
两个节点断开连接。 断开连接的节点之间的顺序总是实现特定的。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_PRECEDING
static final short DOCUMENT_POSITION_PRECEDING
第二个节点在参考节点之前。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_FOLLOWING
static final short DOCUMENT_POSITION_FOLLOWING
节点跟随参考节点。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_CONTAINS
static final short DOCUMENT_POSITION_CONTAINS
节点包含参考节点。 包含的节点也总是在前面。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_CONTAINED_BY
static final short DOCUMENT_POSITION_CONTAINED_BY
节点由参考节点包含。 包含的节点也一直跟随。- 另请参见:
- Constant Field Values
-
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
static final short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
前面和后面的确定是实现特定的。- 另请参见:
- Constant Field Values
-
-
方法详细信息
-
getNodeName
String getNodeName()
该节点的名称取决于其类型; 见上表。
-
getNodeValue
String getNodeValue() throws DOMException
该节点的值取决于其类型; 见上表。 当它被定义为null
,设置它不起作用,包括如果节点是只读的。- 异常
-
DOMException
- DOMSTRING_SIZE_ERR:在实现平台上的DOMString
变量中返回的字符数大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()
ANodeList
包含此节点的所有子节点。 如果没有孩子,这是一个NodeList
包含节点的NodeList
。
-
getFirstChild
Node getFirstChild()
这个节点的第一个孩子。 如果没有这样的节点,则返回null
。
-
getLastChild
Node getLastChild()
这个节点的最后一个孩子。 如果没有这样的节点,则返回null
。
-
getPreviousSibling
Node getPreviousSibling()
紧邻节点之前的节点。 如果没有这样的节点,则返回null
。
-
getNextSibling
Node getNextSibling()
紧随该节点的节点。 如果没有这样的节点,则返回null
。
-
getAttributes
NamedNodeMap getAttributes()
ANamedNodeMap
包含此节点的属性(如果它是一个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
之前。 如果newChild
已经在树中,那么它首先被删除。注意:在本身之前插入节点是依赖于实现的。
- 参数
-
newChild
- 要插入的节点。 -
refChild
- 参考节点,即必须插入新节点之前的节点。 - 结果
- 插入的节点
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
节点类型的newChild
节点,或者要插入的节点是该节点的祖先或该节点本身之一,或者如果此节点的类型为Document
并且DOM应用程序尝试插入第二个DocumentType
或Element
节点。
WRONG_DOCUMENT_ERR:如果从与创建此节点的文档不同的文档创建了newChild
,则newChild
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读方式或如果正在插入的节点的父节点是只读的,则引发。
NOT_FOUND_ERR:如果refChild
不是此节点的子节点,则refChild
。
NOT_SUPPORTED_ERR:如果此节点类型为Document
,如果DOM实现不支持插入DocumentType
或Element
节点,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM 3级
-
replaceChild
Node replaceChild(Node newChild, Node oldChild) throws DOMException
替换子节点oldChild
与newChild
儿童的名单,并返回oldChild
节点。
如果newChild
是一个DocumentFragment
对象,则oldChild
被所有oldChild
代替,这些DocumentFragment
被插入相同的顺序。 如果newChild
已经在树中,则首先将其删除。注意:用自己替换节点是依赖于实现的。
- 参数
-
newChild
- 放入子列表的新节点。 -
oldChild
- 列表中要替换的节点。 - 结果
- 节点被替换
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
节点类型的newChild
节点,或者要放入的节点是该节点的祖先或该节点本身之一,或者如果此节点类型为Document
,替换操作的结果将在Document
节点上添加第二个DocumentType
或Element
。
WRONG_DOCUMENT_ERR:如果从不同于创建此节点的文档创建了newChild
,则newChild
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点或新节点的父节点是只读的,则引发。
NOT_FOUND_ERR:如果oldChild
不是此节点的子节点,则oldChild
。
NOT_SUPPORTED_ERR:如果此节点类型为Document
,则如果DOM实现不支持替换DocumentType
子Element
或Element
子节点,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM 3级
-
removeChild
Node removeChild(Node oldChild) throws DOMException
从子列表中删除oldChild
指示的子节点,并返回。- 参数
-
oldChild
- 正在删除的节点。 - 结果
- 节点被删除。
- 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_FOUND_ERR:如果oldChild
不是此节点的子节点,则oldChild
。
NOT_SUPPORTED_ERR:如果此节点的类型为Document
,如果DOM实现不支持删除DocumentType
子DocumentType
或Element
子节点,则可能会引发此异常。 - 从以下版本开始:
- 1.4,DOM 3级
-
appendChild
Node appendChild(Node newChild) throws DOMException
将节点newChild
添加到此节点的子节点列表的末尾。 如果newChild
已经在树中,则首先将其删除。- 参数
-
newChild
- 要添加的节点。如果它是一个DocumentFragment
对象,则文档片段的全部内容将被移动到此节点的子列表中 - 结果
- 节点已添加。
- 异常
-
DOMException
- HIERARCHY_REQUEST_ERR:如果此节点的类型不允许newChild
类型的newChild
节点,或者如果要附加的节点是该节点的祖先或此节点本身,或者如果此节点的类型为Document
并且DOM应用程序尝试附加第二个DocumentType
或Element
节点。
WRONG_DOCUMENT_ERR:如果从不同于创建此节点的文档创建了newChild
,则newChild
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点为只读方式或如果要插入的节点的上一个父节点是只读的,则引发。
NOT_SUPPORTED_ERR:如果newChild
节点是一个子Document
节点,此异常可能,如果DOM实现不支持取消的提出DocumentType
儿童或Element
孩子。 - 从以下版本开始:
- 1.4,DOM 3级
-
hasChildNodes
boolean hasChildNodes()
返回此节点是否有任何子节点。- 结果
-
返回
true
如果该节点的任何孩子,false
否则。
-
cloneNode
Node cloneNode(boolean deep)
返回此节点的副本,即,作为节点的通用拷贝构造函数。 重复节点没有父节点(parentNode
是null
),没有用户数据。 与导入的节点关联的用户数据不会被转移。 但是,如果已经指定了UserDataHandlers
和相关联的数据,则在此方法返回之前,将使用适当的参数调用这些处理程序。
克隆Element
复制所有属性及其值,包括由XML处理器生成的代表默认属性的值,但是该方法不会复制其包含的所有子Element
,除非是深层克隆。 这包括Element
包含的文本,因为文本包含在子代Text
节点中。 直接克隆Attr
,而不是克隆作为Element
克隆操作的一部分,返回一个指定的属性(specified
是true
)。 克隆Attr
总是克隆自己的孩子,因为它们代表了它的价值,无论这是否是一个深刻的克隆。 克隆EntityReference
如果相应的Entity
可用,则自动构建其子树,无论这是否为深克隆。 克隆任何其他类型的节点只需返回此节点的副本。
请注意,克隆不可变的子树会导致可变拷贝,但EntityReference
克隆的EntityReference
是只读的。 此外,还指定了未指定的Attr
节点的克隆。 而且,克隆Document
,DocumentType
,Entity
,并且Notation
节点实现有关。- 参数
-
deep
- 如果是true
,递归地克隆指定节点下的子树; 如果是false
,则只克隆节点本身(及其属性,如果是Element
)。 - 结果
- 重复节点。
-
normalize
void normalize()
将这个Node
(包括属性节点)下的子树的全部深度全部Text
“正常”形式中,其中只有结构(例如元素,注释,处理指令,CDATA部分和实体引用)分离Text
节点即,既没有相邻的Text
节点也没有空的Text
节点。 这可以用于确保文档的DOM视图与保存和重新加载的DOM视图相同,并且在依赖于特定文档树结构的操作(如XPointer [ XPointer ]查找)时是有用的)使用。 如果的参数“正常化字符”DOMConfiguration
附着在物体Node.ownerDocument
是true
,这种方法也将完全正常化的字符Text
节点。注意:如果文档包含
CDATASections
,则归一化操作本身可能不足,因为XPointers不区分Text
节点和CDATASection
节点。- 从以下版本开始:
- 1.4,DOM 3级
-
isSupported
boolean isSupported(String feature, String version)
测试DOM实现是否实现特定功能,并且此节点支持该功能,如下所述。- 参数
-
feature
- 要测试的功能的名称。 -
version
- 这是要测试的功能的版本号。 - 结果
-
返回
true
是否支持此节点上,指定的功能false
否则。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getNamespaceURI
String getNamespaceURI()
该节点的命名空间URI,如果未指定,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
。
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或null
如果实现无法获取绝对URI。 该值按照如下所述计算。 但是,当Document
支持功能“HTML”[ DOM Level 2 HTML ]时,首先使用HTML BASE元素的href属性的值(如果有的话)来计算基本URI,否则从Document
接口获得documentURI
属性的值。- 从以下版本开始:
- 1.5,DOM 3级
-
compareDocumentPosition
short compareDocumentPosition(Node other) throws DOMException
将参考节点,即将被调用此方法的节点与文档中的位置相关联的节点(即作为参数传递的节点)进行比较。- 参数
-
other
- 与参考节点进行比较的节点。 - 结果
- 返回节点相对于参考节点的位置。
- 异常
-
DOMException
- NOT_SUPPORTED_ERR:当比较的节点来自不协调以返回一致的实现特定结果的不同DOM实现。 - 从以下版本开始:
- 1.5,DOM 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
变量中返回更多字符时DOMString
。 - 从以下版本开始:
- 1.5,DOM 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 3级
-
isSameNode
boolean isSameNode(Node other)
返回此节点是否与给定节点相同。
该方法提供了一种方法来确定实现引用返回的两个Node
引用是否相同。 当两个Node
引用引用同一个对象时,即使通过代理,引用也可以完全互换使用,这样所有的属性都具有相同的值,并且在任一引用上调用相同的DOM方法总是具有完全相同的效果。- 参数
-
other
- 要测试的节点。 - 结果
-
返回
true
如果节点是相同的,false
否则。 - 从以下版本开始:
- 1.5,DOM 3级
-
lookupPrefix
String lookupPrefix(String namespaceURI)
从该节点开始查找与给定名称空间URI关联的前缀。 此方法将忽略默认的命名空间声明。
请参阅此方法使用的算法的详细信息。- 参数
-
namespaceURI
- 要查找的命名空间URI。 - 结果
-
如果找到,返回一个关联的名称空间前缀,如果没有找到,则返回
null
。 如果多个前缀与命名空间前缀相关联,则返回的命名空间前缀取决于实现。 - 从以下版本开始:
- 1.5,DOM 3级
-
isDefaultNamespace
boolean isDefaultNamespace(String namespaceURI)
此方法检查指定的namespaceURI
是否为默认命名空间。- 参数
-
namespaceURI
- 要查找的命名空间URI。 - 结果
-
返回
true
如果指定namespaceURI
是默认的命名空间,false
否则。 - 从以下版本开始:
- 1.5,DOM 3级
-
lookupNamespaceURI
String lookupNamespaceURI(String prefix)
从该节点开始,查找与给定前缀相关联的命名空间URI。
请参阅此方法使用的算法的详细信息。- 参数
-
prefix
- 要查找的前缀。 如果此参数为null
,则该方法将返回默认名称空间URI(如果有)。 - 结果
-
如果没有找到,返回相关联的名称空间URI或
null
。 - 从以下版本开始:
- 1.5,DOM 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 3级
-
getFeature
Object getFeature(String feature, String version)
该方法返回一个专门的对象,该对象实现指定的特征和版本的专门API,如 也可以通过使用结合特定的铸造方法获得专门的物体,但不一定预期如下所述。 该方法还允许实现提供不支持Node
接口的专门对象。- 参数
-
feature
- 要求的功能的名称。 请注意,功能名称之前的任何加号“+”将被忽略,因为在此方法的上下文中不重要。 -
version
- 这是要测试的功能的版本号。 - 结果
-
如果没有实现与该功能关联的接口的对象,则返回实现指定功能和版本(如果有的话)的专用API的对象,或
null
。 如果该方法返回的DOMObject
实现了Node
接口,则必须委托给主核心Node
,而不返回与主核心Node
(如属性,子节点等)不一致的结果。 - 从以下版本开始:
- 1.5,DOM 3级
-
setUserData
Object setUserData(String key, Object data, UserDataHandler handler)
将对象与此节点上的键相关联。 可以通过使用相同的键调用getUserData
来从该节点检索该对象。- 参数
-
key
- 将对象关联到的关键。 -
data
- 与给定键关联的对象,或null
删除与该键的任何现有关联。 -
handler
- 与该密钥关联的处理程序,或null
。 - 结果
-
返回以前与此节点上的给定键相关联的
null
如果没有,则返回DOMUserData
。 - 从以下版本开始:
- 1.5,DOM 3级
-
-