Most visited

Recently visited

Added in API level 1

Node

public interface Node

org.w3c.dom.Node
Known Indirect Subclasses


Node接口是整个文档对象模型的主要数据类型。 它表示文档树中的单个节点。 尽管实现Node接口的所有对象公开了用于处理儿童的方法,但并不是所有实现Node接口的对象都可能有孩子。 例如, Text节点可能没有子节点,并且向这些节点添加子节点会导致DOMException被引发。

属性nodeNamenodeValueattributes包括作为一种机制来获取节点信息,而无需拆毁到特定的派生接口。 如果特定的nodeType (例如nodeValueElementattributesComment )的这些属性没有明显的映射,则返回null 请注意,专用接口可能包含更多和更方便的机制来获取和设置相关信息。

的值 nodeNamenodeValueattributes根据不同节点类型,如下所示:

接口 nodeName nodeValue attributes
Attr same as Attr.name same as Attr.value null
CDATASection "#cdata-section" same as CharacterData.data, the content of the CDATA Section null
Comment "#comment" same as CharacterData.data, the content of the comment null
Document "#document" null null
DocumentFragment "#document-fragment" null null
DocumentType same as DocumentType.name null null
Element same as Element.tagName null NamedNodeMap
Entity entity name null null
EntityReference name of entity referenced null null
Notation notation name null null
ProcessingInstruction same as ProcessingInstruction.target same as ProcessingInstruction.data null
Text "#text" same as CharacterData.data, the content of the text node null

另请参阅 Document Object Model (DOM) Level 3 Core Specification

Summary

Constants

short ATTRIBUTE_NODE

该节点是 Attr

short CDATA_SECTION_NODE

该节点是 CDATASection

short COMMENT_NODE

该节点是 Comment

short DOCUMENT_FRAGMENT_NODE

该节点是 DocumentFragment

short DOCUMENT_NODE

该节点是 Document

short DOCUMENT_POSITION_CONTAINED_BY

该节点由参考节点包含。

short DOCUMENT_POSITION_CONTAINS

该节点包含参考节点。

short DOCUMENT_POSITION_DISCONNECTED

两个节点断开连接。

short DOCUMENT_POSITION_FOLLOWING

节点跟随参考节点。

short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC

先行与后继的确定是特定于实施的。

short DOCUMENT_POSITION_PRECEDING

第二个节点位于参考节点之前。

short DOCUMENT_TYPE_NODE

该节点是 DocumentType

short ELEMENT_NODE

该节点是 Element

short ENTITY_NODE

该节点是 Entity

short ENTITY_REFERENCE_NODE

该节点是 EntityReference

short NOTATION_NODE

该节点是 Notation

short PROCESSING_INSTRUCTION_NODE

该节点是 ProcessingInstruction

short TEXT_NODE

该节点是一个 Text节点。

Public methods

abstract Node appendChild(Node newChild)

将节点 newChild添加到此节点的子节点列表的末尾。

abstract Node cloneNode(boolean deep)

返回此节点的副本,即充当节点的通用拷贝构造函数。

abstract short compareDocumentPosition(Node other)

比较参考节点,即

abstract NamedNodeMap getAttributes()

一个 NamedNodeMap包含此节点的属性(如果它是 Element )或 null否则。

abstract String getBaseURI()

该节点的绝对基本URI或 null如果该实现无法获得绝对URI)。

abstract NodeList getChildNodes()

包含此节点的所有子节点的 NodeList

abstract Object getFeature(String feature, String version)

此方法返回一个专用对象,该对象实现指定功能和版本的专用API,如中指定。

abstract Node getFirstChild()

这个节点的第一个孩子。

abstract Node getLastChild()

这个节点的最后一个孩子。

abstract String getLocalName()

返回此节点的限定名称的本地部分。

abstract String getNamespaceURI()

该节点的名称空间URI,如果未指定, null (请参阅 null )。

abstract Node getNextSibling()

节点紧跟在此节点之后。

abstract String getNodeName()

该节点的名称取决于其类型; 见上表。

abstract short getNodeType()

如上定义的代表底层对象类型的代码。

abstract String getNodeValue()

此节点的值取决于其类型; 见上表。

abstract Document getOwnerDocument()

与此节点关联的 Document对象。

abstract Node getParentNode()

此节点的父节点。

abstract String getPrefix()

该节点的名称空间前缀,如果未指定, null

abstract Node getPreviousSibling()

该节点之前的节点。

abstract String getTextContent()

该属性返回此节点及其后代的文本内容。

abstract Object getUserData(String key)

检索与此节点上的键关联的对象。

abstract boolean hasAttributes()

返回此节点(如果它是元素)是否具有任何属性。

abstract boolean hasChildNodes()

返回此节点是否有任何子节点。

abstract Node insertBefore(Node newChild, Node refChild)

插入节点 newChild现有的子节点之前 refChild

abstract boolean isDefaultNamespace(String namespaceURI)

此方法检查指定的 namespaceURI是否是默认名称空间。

abstract boolean isEqualNode(Node arg)

测试两个节点是否相等。

abstract boolean isSameNode(Node other)

返回此节点是否与给定节点相同。

abstract boolean isSupported(String feature, String version)

测试DOM实现是否实现了特定的功能,该功能是否受此节点支持,如指定。

abstract String lookupNamespaceURI(String prefix)

从该节点开始查找与给定前缀关联的命名空间URI。

abstract String lookupPrefix(String namespaceURI)

从该节点开始查找与给定名称空间URI关联的前缀。

abstract void normalize()

将包含属性节点的 Node下的子树的全部 Text节点全部 Text “正常”形式,其中只有结构(例如元素,注释,处理指令,CDATA节和实体引用)将 Text节点,即既没有相邻的 Text节点,也没有空的 Text节点。

abstract Node removeChild(Node oldChild)

从子项列表中删除由 oldChild指示的子节点,并将其返回。

abstract Node replaceChild(Node newChild, Node oldChild)

替换子节点 oldChildnewChild儿童的名单,并返回 oldChild节点。

abstract void setNodeValue(String nodeValue)

此节点的值取决于其类型; 见上表。

abstract void setPrefix(String prefix)

该节点的名称空间前缀,如果未指定, null

abstract void setTextContent(String textContent)

该属性返回此节点及其后代的文本内容。

abstract Object setUserData(String key, Object data, UserDataHandler handler)

将对象与此节点上的键相关联。

Constants

ATTRIBUTE_NODE

Added in API level 1
short ATTRIBUTE_NODE

该节点是 Attr

常量值:2(0x00000002)

CDATA_SECTION_NODE

Added in API level 1
short CDATA_SECTION_NODE

该节点是 CDATASection

常量值:4(0x00000004)

COMMENT_NODE

Added in API level 1
short COMMENT_NODE

该节点是 Comment

常量值:8(0x00000008)

DOCUMENT_FRAGMENT_NODE

Added in API level 1
short DOCUMENT_FRAGMENT_NODE

该节点是 DocumentFragment

常量值:11(0x0000000b)

DOCUMENT_NODE

Added in API level 1
short DOCUMENT_NODE

该节点是 Document

常量值:9(0x00000009)

DOCUMENT_POSITION_CONTAINED_BY

Added in API level 8
short DOCUMENT_POSITION_CONTAINED_BY

该节点由参考节点包含。 包含的节点也始终跟着。

常量值:16(0x00000010)

DOCUMENT_POSITION_CONTAINS

Added in API level 8
short DOCUMENT_POSITION_CONTAINS

该节点包含参考节点。 包含的节点总是在前面。

常量值:8(0x00000008)

DOCUMENT_POSITION_DISCONNECTED

Added in API level 8
short DOCUMENT_POSITION_DISCONNECTED

两个节点断开连接。 断开的节点之间的顺序始终是特定于实现的。

常数值:1(0x00000001)

DOCUMENT_POSITION_FOLLOWING

Added in API level 8
short DOCUMENT_POSITION_FOLLOWING

节点跟随参考节点。

常量值:4(0x00000004)

DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC

Added in API level 8
short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC

先行与后继的确定是特定于实施的。

常量值:32(0x00000020)

DOCUMENT_POSITION_PRECEDING

Added in API level 8
short DOCUMENT_POSITION_PRECEDING

第二个节点位于参考节点之前。

常量值:2(0x00000002)

DOCUMENT_TYPE_NODE

Added in API level 1
short DOCUMENT_TYPE_NODE

该节点是 DocumentType

常量值:10(0x0000000a)

ELEMENT_NODE

Added in API level 1
short ELEMENT_NODE

该节点是 Element

常数值:1(0x00000001)

ENTITY_NODE

Added in API level 1
short ENTITY_NODE

该节点是 Entity

常数值:6(0x00000006)

ENTITY_REFERENCE_NODE

Added in API level 1
short ENTITY_REFERENCE_NODE

该节点是 EntityReference

常量值:5(0x00000005)

NOTATION_NODE

Added in API level 1
short NOTATION_NODE

该节点是 Notation

常量值:12(0x0000000c)

PROCESSING_INSTRUCTION_NODE

Added in API level 1
short PROCESSING_INSTRUCTION_NODE

该节点是 ProcessingInstruction

常量值:7(0x00000007)

TEXT_NODE

Added in API level 1
short TEXT_NODE

该节点是一个 Text节点。

常量值:3(0x00000003)

Public methods

appendChild

Added in API level 1
Node appendChild (Node newChild)

将节点newChild添加到此节点的子节点列表的末尾。 如果newChild已经在树中,它首先被删除。

Parameters
newChild Node: The node to add.If it is a DocumentFragment object, the entire contents of the document fragment are moved into the child list of this node
Returns
Node The node added.
Throws
DOMException HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to append is one of this node's ancestors or this node itself, or if this node is of type Document and the DOM application attempts to append a second DocumentType or Element node.
WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or if the previous parent of the node being inserted is readonly.
NOT_SUPPORTED_ERR: if the newChild node is a child of the Document node, this exception might be raised if the DOM implementation doesn't support the removal of the DocumentType child or Element child.

cloneNode

Added in API level 1
Node cloneNode (boolean deep)

返回此节点的副本,即充当节点的通用拷贝构造函数。 重复节点没有父节点( parentNodenull ),也没有用户数据。 与导入的节点关联的用户数据不会被结转。 但是,如果任何UserDataHandlers与相关数据一起指定,则在此方法返回之前,将使用适当的参数调用这些处理程序。
克隆Element复制所有属性及其值,包括由XML处理器生成的属性以表示默认属性,但此方法不复制其包含的任何子项,除非它是深度克隆。 这包括Element包含的文本,因为该文本包含在Text子节点中。 直接克隆Attr ,而不是克隆为Element克隆操作的一部分,返回指定的属性( specifiedtrue )。 克隆一个Attr总是克隆它的孩子,因为它们代表了它的价值,不管这是否是一个深刻的克隆。 如果相应的Entity可用,克隆EntityReference自动构造其子树,而不管这是否是深层克隆。 克隆任何其他类型的节点只需返回此节点的副本。
请注意,克隆不可变子树会导致可变副本,但EntityReference克隆的孩子EntityReference 另外,还指定了未指定Attr节点的克隆。 而且,克隆DocumentDocumentTypeEntity ,并且Notation节点实现有关。

Parameters
deep boolean: If true, recursively clone the subtree under the specified node; if false, clone only the node itself (and its attributes, if it is an Element).
Returns
Node The duplicate node.

compareDocumentPosition

Added in API level 8
short compareDocumentPosition (Node other)

将参考节点(即调用此方法的节点)与节点(即作为参数传递的节点)相对于其在文档中的位置并根据文档顺序进行比较。

Parameters
other Node: The node to compare against the reference node.
Returns
short Returns how the node is positioned relatively to the reference node.
Throws
DOMException NOT_SUPPORTED_ERR: when the compared nodes are from different DOM implementations that do not coordinate to return consistent implementation-specific results.

getAttributes

Added in API level 1
NamedNodeMap getAttributes ()

NamedNodeMap包含此节点的属性(如果它是 Element )或 null否则。

Returns
NamedNodeMap

getBaseURI

Added in API level 8
String getBaseURI ()

如果实现无法获取绝对URI,则此节点的绝对基本URI或null 该值按照中所述进行计算。 但是,如果Document支持功能“HTML”[ DOM Level 2 HTML ],则首先使用HTML BASE元素的href属性值(如果有)以及来自Document接口的documentURI属性的值计算基本URI。

Returns
String

getChildNodes

Added in API level 1
NodeList getChildNodes ()

包含此节点的所有子节点的NodeList 如果没有孩子,这是一个NodeList包含节点的NodeList

Returns
NodeList

getFeature

Added in API level 8
Object getFeature (String feature, 
                String version)

此方法返回一个专用对象,该对象实现指定功能和版本的专用API,如中指定。 专用对象也可以通过使用特定于绑定的投射方法来获得,但不一定如所讨论的那样。 该方法还允许实现提供不支持Node接口的专用对象。

Parameters
feature String: The name of the feature requested. Note that any plus sign "+" prepended to the name of the feature will be ignored since it is not significant in the context of this method.
version String: This is the version number of the feature to test.
Returns
Object Returns an object which implements the specialized APIs of the specified feature and version, if any, or null if there is no object which implements interfaces associated with that feature. If the DOMObject returned by this method implements the Node interface, it must delegate to the primary core Node and not return results inconsistent with the primary core Node such as attributes, childNodes, etc.

getFirstChild

Added in API level 1
Node getFirstChild ()

这个节点的第一个孩子。 如果没有这样的节点,则返回null

Returns
Node

getLastChild

Added in API level 1
Node getLastChild ()

这个节点的最后一个孩子。 如果没有这样的节点,则返回null

Returns
Node

getLocalName

Added in API level 1
String getLocalName ()

返回此节点的限定名称的本地部分。
对于ELEMENT_NODEATTRIBUTE_NODE以外的任何类型的节点以及使用DOM Level 1方法(例如Document.createElement()创建的节点,这总是null

Returns
String

getNamespaceURI

Added in API level 1
String getNamespaceURI ()

该节点的名称空间URI,如果未指定, null (请参阅null )。
这不是计算值,它是基于范围内名称空间声明检查的名称空间查找的结果。 它仅仅是在创建时给出的命名空间URI。
对于ELEMENT_NODEATTRIBUTE_NODE以外的任何类型的节点以及使用DOM Level 1方法(例如Document.createElement()创建的节点,总是null

注意:根据XML规范[ XML Namespaces ]中的名称空间,属性不会从其所连接的元素继承其名称空间。 如果一个属性没有明确给出一个名称空间,它只是没有名称空间。

Returns
String

getNextSibling

Added in API level 1
Node getNextSibling ()

节点紧跟在此节点之后。 如果没有这样的节点,则返回null

Returns
Node

getNodeName

Added in API level 1
String getNodeName ()

该节点的名称取决于其类型; 见上表。

Returns
String

getNodeType

Added in API level 1
short getNodeType ()

如上定义的代表底层对象类型的代码。

Returns
short

getNodeValue

Added in API level 1
String getNodeValue ()

此节点的值取决于其类型; 见上表。 当它被定义为null ,将其设置为无效,包括节点是只读的。

Returns
String
Throws
DOMException DOMSTRING_SIZE_ERR: Raised when it would return more characters than fit in a DOMString variable on the implementation platform.

getOwnerDocument

Added in API level 1
Document getOwnerDocument ()

与此节点关联的Document对象。 这也是用于创建新节点的Document对象。 当此节点是DocumentDocumentType ,它尚未与任何Document一起使用时,这是null

Returns
Document

getParentNode

Added in API level 1
Node getParentNode ()

此节点的父节点。 所有节点,除了AttrDocumentDocumentFragmentEntity ,并Notation可以有父。 但是,如果刚刚创建了一个节点并且尚未添加到该树中,或者该树已从树中删除,则这是null

Returns
Node

getPrefix

Added in API level 1
String getPrefix ()

该节点的名称空间前缀,如果未指定, null 当它被定义为null ,将其设置为无效,包括节点是只读的。
请注意,设置该属性,允许的情况下,改变nodeName属性,其持有的合格的名称,以及该tagNamename的属性ElementAttr接口,适用时。
将前缀设置为null使其未指定,将其设置为空字符串取决于实现。
另请注意,更改已知具有默认值的属性的前缀,不会使用默认值创建新属性并显示原始前缀,因为namespaceURIlocalName不会更改。
比其他任何类型的节点ELEMENT_NODEATTRIBUTE_NODE与DOM 1级方法创建和节点,例如createElementDocument接口,这始终是null

Returns
String

getPreviousSibling

Added in API level 1
Node getPreviousSibling ()

该节点之前的节点。 如果没有这样的节点,则返回null

Returns
Node

getTextContent

Added in API level 8
String getTextContent ()

该属性返回此节点及其后代的文本内容。 当它被定义为null ,设置它不起作用。 在设置时,任何可能的子女此节点可以具有被去除,并且,如果新的字符串不为空或null ,由单个替换Text含有该属性被设置为字符串节点。
获取时,不执行序列化,返回的字符串不包含任何标记。 不执行空白标准化,并且返回的字符串不包含元素内容中的空白(请参阅属性Text.isElementContentWhitespace )。 同样,在设置时,也不执行解析,输入字符串将被视为纯文本内容。
返回的字符串由该节点的文本内容决定,具体取决于其类型,如下所示:

Node type Content
ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE concatenation of the textContent 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_NODE nodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null

Returns
String
Throws
DOMException DOMSTRING_SIZE_ERR: Raised when it would return more characters than fit in a DOMString variable on the implementation platform.

getUserData

Added in API level 8
Object getUserData (String key)

检索与此节点上的键关联的对象。 必须首先通过使用相同的密钥调用setUserData来将对象设置为此节点。

Parameters
key String: The key the object is associated to.
Returns
Object Returns the DOMUserData associated to the given key on this node, or null if there was none.

hasAttributes

Added in API level 1
boolean hasAttributes ()

返回此节点(如果它是元素)是否具有任何属性。

Returns
boolean Returns true if this node has any attributes, false otherwise.

hasChildNodes

Added in API level 1
boolean hasChildNodes ()

返回此节点是否有任何子节点。

Returns
boolean Returns true if this node has any children, false otherwise.

insertBefore

Added in API level 1
Node insertBefore (Node newChild, 
                Node refChild)

插入节点newChild现有的子节点之前refChild 如果refChildnullnewChild在子列表的末尾插入newChild
如果newChildDocumentFragment对象,则其所有子项都将以相同的顺序插入到refChild之前。 如果newChild已经在树中,它首先被删除。

注意:在自身之前插入节点取决于实现。

Parameters
newChild Node: The node to insert.
refChild Node: The reference node, i.e., the node before which the new node must be inserted.
Returns
Node The node being inserted.
Throws
DOMException HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to insert is one of this node's ancestors or this node itself, or if this node is of type Document and the DOM application attempts to insert a second DocumentType or Element node.
WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or if the parent of the node being inserted is readonly.
NOT_FOUND_ERR: Raised if refChild is not a child of this node.
NOT_SUPPORTED_ERR: if this node is of type Document, this exception might be raised if the DOM implementation doesn't support the insertion of a DocumentType or Element node.

isDefaultNamespace

Added in API level 8
boolean isDefaultNamespace (String namespaceURI)

此方法检查指定的 namespaceURI是否是默认名称空间。

Parameters
namespaceURI String: The namespace URI to look for.
Returns
boolean Returns true if the specified namespaceURI is the default namespace, false otherwise.

isEqualNode

Added in API level 8
boolean isEqualNode (Node arg)

测试两个节点是否相等。
此方法测试节点的相等性,而不是相同性(即,两个节点是否是对同一对象的引用),可以用Node.isSameNode()进行测试。 所有相同的节点也是相同的,尽管相反的情况可能并非如此。
当且仅当满足以下条件时,两个节点相等:

  • The two nodes are of the same type.
  • The following string attributes are equal: nodeName, localName, namespaceURI, prefix, nodeValue . This is: they are both null, or they have the same length and are character for character identical.
  • The attributes NamedNodeMaps are equal. This is: they are both null, or they have the same length and for each node that exists in one map there is a node that exists in the other map and is equal, although not necessarily at the same index.
  • The childNodes NodeLists are equal. This is: they are both null, or they have the same length and contain equal nodes at the same index. Note that normalization can affect equality; to avoid this, nodes should be normalized before being compared.

For two DocumentType nodes to be equal, the following conditions must also be satisfied:
  • The following string attributes are equal: publicId, systemId, internalSubset.
  • The entities NamedNodeMaps are equal.
  • The notations NamedNodeMaps are equal.

On the other hand, the following do not affect equality: the ownerDocument, baseURI, and parentNode attributes, the specified attribute for Attr nodes, the schemaTypeInfo attribute for Attr and Element nodes, the Text.isElementContentWhitespace attribute for Text nodes, as well as any user data or event listeners registered on the nodes.

注:作为一般规则,考虑到平等检查,以上描述中未提及的任何内容都不重要。 请注意,此规范的未来版本可能会考虑更多的属性,符合本规范的实现将相应更新。

Parameters
arg Node: The node to compare equality with.
Returns
boolean Returns true if the nodes are equal, false otherwise.

isSameNode

Added in API level 8
boolean isSameNode (Node other)

返回此节点是否与给定节点相同。
此方法提供了一种确定实现方法返回的两个Node引用是否引用同一对象的方法。 当两个Node引用是对同一对象的引用时,即使通过代理,引用也可以完全互换使用,以便所有属性具有相同的值,并且在任一引用上调用相同的DOM方法始终具有完全相同的效果。

Parameters
other Node: The node to test against.
Returns
boolean Returns true if the nodes are the same, false otherwise.

isSupported

Added in API level 1
boolean isSupported (String feature, 
                String version)

测试DOM实现是否实现了特定的功能,该功能是否受此节点支持,如指定。

Parameters
feature String: The name of the feature to test.
version String: This is the version number of the feature to test.
Returns
boolean Returns true if the specified feature is supported on this node, false otherwise.

lookupNamespaceURI

Added in API level 8
String lookupNamespaceURI (String prefix)

从该节点开始查找与给定前缀关联的命名空间URI。
请参阅此方法使用的算法的详细信息。

Parameters
prefix String: The prefix to look for. If this parameter is null, the method will return the default namespace URI if any.
Returns
String Returns the associated namespace URI or null if none is found.

lookupPrefix

Added in API level 8
String lookupPrefix (String namespaceURI)

从该节点开始查找与给定名称空间URI关联的前缀。 该方法忽略默认的名称空间声明。
请参阅此方法使用的算法的详细信息。

Parameters
namespaceURI String: The namespace URI to look for.
Returns
String Returns an associated namespace prefix if found or null if none is found. If more than one prefix are associated to the namespace prefix, the returned namespace prefix is implementation dependent.

normalize

Added in API level 1
void normalize ()

将所有Text节点的子树的全部深度此下方Node ,包括属性节点,成“正常”的形式,其中仅结构(例如,元素,注释,处理指令,CDATA部分和实体引用)分隔Text节点,即既没有相邻的Text节点,也没有空的Text节点。 这可以用来确保文档的DOM视图与保存并重新加载时相同,并且在依赖于特定文档树结构的操作(例如XPointer [ XPointer ]查找)对于使用。 如果连接到Node.ownerDocumentDOMConfiguration对象的参数“规格化字符”为true ,则此方法也将完全标准化Text节点的字符。

注意:在文档包含 CDATASections情况下,由于XPointers不区分 Text节点和 CDATASection节点,所以单独执行标准化操作可能不够。

removeChild

Added in API level 1
Node removeChild (Node oldChild)

从子项列表中删除由 oldChild指示的子节点,并将其返回。

Parameters
oldChild Node: The node being removed.
Returns
Node The node removed.
Throws
DOMException NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NOT_FOUND_ERR: Raised if oldChild is not a child of this node.
NOT_SUPPORTED_ERR: if this node is of type Document, this exception might be raised if the DOM implementation doesn't support the removal of the DocumentType child or the Element child.

replaceChild

Added in API level 1
Node replaceChild (Node newChild, 
                Node oldChild)

替换子节点oldChildnewChild儿童的名单,并返回oldChild节点。
如果newChildDocumentFragment对象,则oldChild将被所有oldChild替代,这些DocumentFragment以相同顺序插入。 如果newChild已经在树中,它首先被删除。

注意:用自己替换节点取决于实现。

Parameters
newChild Node: The new node to put in the child list.
oldChild Node: The node being replaced in the list.
Returns
Node The node replaced.
Throws
DOMException HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to put in is one of this node's ancestors or this node itself, or if this node is of type Document and the result of the replacement operation would add a second DocumentType or Element on the Document node.
WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node or the parent of the new node is readonly.
NOT_FOUND_ERR: Raised if oldChild is not a child of this node.
NOT_SUPPORTED_ERR: if this node is of type Document, this exception might be raised if the DOM implementation doesn't support the replacement of the DocumentType child or Element child.

setNodeValue

Added in API level 1
void setNodeValue (String nodeValue)

此节点的值取决于其类型; 见上表。 当它被定义为null ,设置它不起作用,包括节点是只读的。

Parameters
nodeValue String
Throws
DOMException NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly and if it is not defined to be null.

setPrefix

Added in API level 1
void setPrefix (String prefix)

该节点的名称空间前缀,如果未指定, null 当它被定义为null ,设置它不起作用,包括节点是只读的。
请注意,设置该属性,允许的情况下,改变nodeName属性,其持有的合格的名称,以及该tagNamename的属性ElementAttr接口,适用时。
将前缀设置为null使其未指定,将其设置为空字符串取决于实现。
还请注意,更改已知具有默认值的属性的前缀,不会使用默认值创建新属性并显示原始前缀,因为namespaceURIlocalName不会更改。
比其他任何类型的节点ELEMENT_NODEATTRIBUTE_NODE与DOM 1级方法创建和节点,例如createElementDocument接口,这始终是null

Parameters
prefix String
Throws
DOMException INVALID_CHARACTER_ERR: Raised if the specified prefix contains an illegal character according to the XML version in use specified in the Document.xmlVersion attribute.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NAMESPACE_ERR: Raised if the specified prefix is malformed per the Namespaces in XML specification, if the namespaceURI of this node is null, if the specified prefix is "xml" and the namespaceURI of this node is different from " http://www.w3.org/XML/1998/namespace", if this node is an attribute and the specified prefix is "xmlns" and the namespaceURI of this node is different from "http://www.w3.org/2000/xmlns/", or if this node is an attribute and the qualifiedName of this node is "xmlns" [XML Namespaces] .

setTextContent

Added in API level 8
void setTextContent (String textContent)

该属性返回此节点及其后代的文本内容。 当它被定义为null ,设置它不起作用。 在设置时,删除此节点可能拥有的任何子节点,并且如果新字符串不为空或null ,则替换为包含此属性设置为的字符串的单个Text节点。
获取时,不执行序列化,返回的字符串不包含任何标记。 不执行空白标准化,并且返回的字符串不包含元素内容中的空白(请参阅属性Text.isElementContentWhitespace )。 同样,在设置时,也不执行解析,输入字符串将被视为纯文本内容。
返回的字符串由该节点的文本内容决定,具体取决于其类型,如下所示:

Node type Content
ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE concatenation of the textContent 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_NODE nodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null

Parameters
textContent String
Throws
DOMException NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.

setUserData

Added in API level 8
Object setUserData (String key, 
                Object data, 
                UserDataHandler handler)

将对象与此节点上的键相关联。 稍后可以通过使用相同的密钥调用getUserData从该节点检索该对象。

Parameters
key String: The key to associate the object to.
data Object: The object to associate to the given key, or null to remove any existing association to that key.
handler UserDataHandler: The handler to associate to that key, or null.
Returns
Object Returns the DOMUserData previously associated to the given key on this node, or null if there was none.

Hooray!