-
- All Superinterfaces:
-
Node
- All Known Subinterfaces:
-
Detail
,DetailEntry
,HTMLAnchorElement
,HTMLAppletElement
,HTMLAreaElement
,HTMLBaseElement
,HTMLBaseFontElement
,HTMLBodyElement
,HTMLBRElement
,HTMLButtonElement
,HTMLDirectoryElement
,HTMLDivElement
,HTMLDListElement
,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
,HTMLUListElement
,SOAPBody
SOAPBody
,SOAPBodyElement
,SOAPElement
,SOAPEnvelope
,SOAPFault
,SOAPFaultElement
,SOAPHeader
,SOAPHeaderElement
- 所有已知实现类:
-
IIOMetadataNode
public interface Element extends Node
Element
接口代表HTML或XML文档中的元素。 元素可以具有与它们相关联的属性; 由于Element
接口继承自Node
,通用的Node
接口属性attributes
可用于检索元素的所有属性集。Element
接口上有一些方法可以通过名称检索一个Attr
对象,或者按名称检索一个属性值。 在XML中,属性值可能包含实体引用,应检索Attr
对象以检查表示属性值的可能相当复杂的子树。 另一方面,在HTML中,所有属性都具有简单的字符串值,可以方便地使用直接访问属性值的方法。注意:在DOM级别2中,方法
normalize
继承自被移动的Node
接口。
-
-
Field Summary
-
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 String
getAttribute(String name)
按名称检索属性值。Attr
getAttributeNode(String name)
按名称检索属性节点。Attr
getAttributeNodeNS(String namespaceURI, String localName)
通过本地名称和命名空间URI检索Attr
节点。String
getAttributeNS(String namespaceURI, String localName)
通过本地名称和命名空间URI检索属性值。NodeList
getElementsByTagName(String name)
返回NodeList
所有子孙的Elements
具有给定标记名称,在文档顺序。NodeList
getElementsByTagNameNS(String namespaceURI, String localName)
返回NodeList
所有后代的Elements
具有给定本地名称和命名空间URI在文档顺序。TypeInfo
getSchemaTypeInfo()
与此元素相关联的类型信息。String
getTagName()
元素的名称。boolean
hasAttribute(String name)
返回true
当具有给定名称的属性在此元素上指定或具有默认值(其中为false
。boolean
hasAttributeNS(String namespaceURI, String localName)
返回true
当具有给定的本地名称和命名空间URI的属性在该元素上指定或者具有默认值false
,false
。void
removeAttribute(String name)
按名称删除属性。Attr
removeAttributeNode(Attr oldAttr)
删除指定的属性节点。void
removeAttributeNS(String namespaceURI, String localName)
通过本地名称和命名空间URI删除属性。void
setAttribute(String name, String value)
添加一个新属性。Attr
setAttributeNode(Attr newAttr)
添加一个新的属性节点。Attr
setAttributeNodeNS(Attr newAttr)
添加一个新属性。void
setAttributeNS(String namespaceURI, String qualifiedName, String value)
添加一个新属性。void
setIdAttribute(String name, boolean isId)
如果参数isId
为true
,则此方法将指定的属性声明为用户确定的ID属性。void
setIdAttributeNode(Attr idAttr, boolean isId)
如果参数isId
为true
,则此方法将指定的属性声明为用户确定的ID属性。void
setIdAttributeNS(String namespaceURI, String localName, boolean isId)
如果参数isId
为true
,则此方法将指定的属性声明为用户确定的ID属性。-
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
-
-
-
-
方法详细信息
-
getTagName
String getTagName()
元素的名称。 如果Node.localName
与null
不同,则此属性是限定名称。 例如,在:<elementExample id="demo"> ... </elementExample> ,
tagName
具有值"elementExample"
。 请注意,这是在XML中的情况保留,DOM的所有操作也是如此。 HTML DOM返回规范的大写形式的HTML元素的tagName
,而不管源HTML文档中是否有这种情况。
-
getAttribute
String getAttribute(String name)
按名称检索属性值。- 参数
-
name
- 要检索的属性的名称。 - 结果
-
Attr
值作为字符串,或空字符串,如果该属性没有指定或默认值。
-
setAttribute
void setAttribute(String name, String value) throws DOMException
添加一个新属性。 如果具有该名称的属性已经存在于元素中,则其值将更改为value参数的值。 这个值是一个简单的字符串; 它不被解析,因为它被设置。 因此,任何标记(例如要被识别为实体引用的语法)被视为文本文本,并且在写出时需要被实现适当地转义。 为了分配包含实体引用的属性值,用户必须创建一个Attr
节点加上任何Text
和EntityReference
节点,构建适当的子树,并使用setAttributeNode
将其分配为属性的值。
要使用限定名称和命名空间URI设置属性,请使用setAttributeNS
方法。- 参数
-
name
- 要创建或更改的属性的名称。 -
value
- 以字符串形式设置的值。 - 异常
-
DOMException
- INVALID_CHARACTER_ERR:根据Document.xmlVersion
属性中指定的XML版本,如果指定的名称不是XML名称,则Document.xmlVersion
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
-
removeAttribute
void removeAttribute(String name) throws DOMException
按名称删除属性。 如果在DTD中定义了已删除属性的默认值,则在适用时,会立即出现一个新属性,默认值以及相应的名称空间URI,本地名称和前缀。 该实现可能类似地处理来自其他模式的默认值,但应用程序应使用Document.normalizeDocument()
来保证此信息是最新的。
如果没有找到具有此名称的属性,则此方法无效。
要通过本地名称和命名空间URI删除属性,请使用removeAttributeNS
方法。- 参数
-
name
- 要删除的属性的名称。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
-
getAttributeNode
Attr getAttributeNode(String name)
按名称检索属性节点。
要通过限定名称和命名空间URI检索属性节点,请使用getAttributeNodeNS
方法。- 参数
-
name
- 要检索的属性的名称(nodeName
)。 - 结果
-
具有指定名称(
nodeName
)或null
的Attr
节点,如果没有此类属性。
-
setAttributeNode
Attr setAttributeNode(Attr newAttr) throws DOMException
添加一个新的属性节点。 如果具有该名称的属性(nodeName
)已经存在于元素中,则会被新的属性替换。 替换属性节点本身不起作用。
要添加具有限定名称和命名空间URI的新属性节点,请使用setAttributeNodeNS
方法。- 参数
-
newAttr
- 要添加到属性列表的Attr
节点。 - 结果
-
如果
newAttr
属性替换现有属性,则返回已替换的Attr
节点,否则返回null
。 - 异常
-
DOMException
- WRONG_DOCUMENT_ERR:如果从创建该元素的文档创建了另一个文档,则为newAttr
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
INUSE_ATTRIBUTE_ERR:如果newAttr
已经是另一个Element
对象的属性,则Element
。 DOM用户必须显式克隆Attr
节点,以便在其他元素中重新使用它们。
-
removeAttributeNode
Attr removeAttributeNode(Attr oldAttr) throws DOMException
删除指定的属性节点。 如果在DTD中定义了已删除的Attr
节点的默认值,那么在适用的情况下,将立即出现一个新节点,其默认值以及相应的命名空间URI,本地名称和前缀。 该实现可能类似地处理来自其他模式的默认值,但应用程序应使用Document.normalizeDocument()
来保证此信息是最新的。- 参数
-
oldAttr
- 要从属性列表中删除的Attr
节点。 - 结果
-
已删除的
Attr
节点。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_FOUND_ERR:如果oldAttr
不是元素的属性,则oldAttr
。
-
getElementsByTagName
NodeList getElementsByTagName(String name)
返回NodeList
所有子孙的Elements
具有给定标记名称,在文档顺序。- 参数
-
name
- 要匹配的标签的名称。 特殊值“*”匹配所有标签。 - 结果
-
匹配
Element
节点的列表。
-
getAttributeNS
String getAttributeNS(String namespaceURI, String localName) throws DOMException
- 参数
-
namespaceURI
- 要检索的属性的命名空间URI。 -
localName
- 要检索的属性的本地名称。 - 结果
-
Attr
作为字符串的值,或空字符串,如果该属性没有指定或默认值。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
setAttributeNS
void setAttributeNS(String namespaceURI, String qualifiedName, String value) throws DOMException
添加一个新属性。 如果元素上已经存在具有相同本地名称和命名空间URI的属性,则其前缀将更改为qualifiedName
的前缀部分,并将其值更改为value
参数。 这个值是一个简单的字符串; 它不被解析,因为它被设置。 因此,任何标记(例如要被识别为实体引用的语法)被视为文本文本,并且在写出时需要被实现适当地转义。 为了分配包含实体引用的属性值,用户必须创建一个Attr
节点加上任何Text
和EntityReference
节点,构建适当的子树,并使用setAttributeNodeNS
或setAttributeNode
将其分配为属性的值。
Per [ XML Namespaces ],应用程序必须使用值为null
作为方法的namespaceURI
参数,如果他们希望没有命名空间。- 参数
-
namespaceURI
- 要创建或更改的属性的命名空间URI。 -
qualifiedName
- 要创建或更改的属性的限定名称。 -
value
- 以字符串形式设置的值。 - 异常
-
DOMException
- INVALID_CHARACTER_ERR:如果指定的限定名称不是根据Document.xmlVersion
属性中指定的XML版本的XML名称,则Document.xmlVersion
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NAMESPACE_ERR:如果qualifiedName
在XML规范中的命名空间格式不正确,则如果qualifiedName
具有前缀,并且namespaceURI
为null
,则如果qualifiedName
具有“xml”的前缀,而namespaceURI
与“ http://www.w3.org/XML/1998/namespace ”不同, 则会引发qualifiedName
或其前缀为“xmlns”,而namespaceURI
与“ http://www.w3.org/2000/xmlns/ ”不同,或者如果namespaceURI
为“ http://www.w3.org/2000/xmlns/ ”,并且qualifiedName
及其前缀都不是“xmlns”。
NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(如[ HTML 4.01 ])),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
removeAttributeNS
void removeAttributeNS(String namespaceURI, String localName) throws DOMException
通过本地名称和命名空间URI删除属性。 如果在DTD中定义了已删除属性的默认值,则在适用时,会立即出现一个新属性,默认值以及相应的名称空间URI,本地名称和前缀。 该实现可能类似地处理来自其他模式的默认值,但应用程序应使用Document.normalizeDocument()
来保证此信息是最新的。
如果没有找到具有此本地名称和命名空间URI的属性,则此方法无效。
根据[ XML Namespaces ],如果应用程序希望没有命名空间,那么应用程序必须使用值为null
作为方法的参数namespaceURI
。- 参数
-
namespaceURI
- 要删除的属性的命名空间URI。 -
localName
- 要删除的属性的本地名称。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getAttributeNodeNS
Attr getAttributeNodeNS(String namespaceURI, String localName) throws DOMException
- 参数
-
namespaceURI
- 要检索的属性的命名空间URI。 -
localName
- 要检索的属性的本地名称。 - 结果
-
具有指定属性本地名称和命名空间URI的
Attr
节点,如果没有这样的属性,null
。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能会被引发)。 - 从以下版本开始:
- 1.4,DOM Level 2
-
setAttributeNodeNS
Attr setAttributeNodeNS(Attr newAttr) throws DOMException
添加一个新属性。 如果具有该本地名称和该名称空间URI的属性已经存在于该元素中,则该属性将被新的属性替换。 替换属性节点本身不起作用。
根据[ XML Namespaces ],如果希望没有命名空间,则应用程序必须使用值为null
作为方法的参数namespaceURI
。- 参数
-
newAttr
- 要添加到属性列表的Attr
节点。 - 结果
-
如果
newAttr
属性替换具有相同本地名称和命名空间URI的现有属性,则返回替换的Attr
节点,否则返回null
。 - 异常
-
DOMException
- WRONG_DOCUMENT_ERR:如果从不同于创建该元素的文档创建了newAttr
,则newAttr
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
INUSE_ATTRIBUTE_ERR:如果newAttr
已经是另一个Element
对象的属性,则Element
。 DOM用户必须显式克隆Attr
节点,以便在其他元素中重新使用它们。
NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ])),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getElementsByTagNameNS
NodeList getElementsByTagNameNS(String namespaceURI, String localName) throws DOMException
返回NodeList
所有后代的Elements
具有给定本地名称和命名空间URI在文档顺序。- 参数
-
namespaceURI
- 要匹配的元素的命名空间URI。 特殊值“*”匹配所有命名空间。 -
localName
- 要匹配的元素的本地名称。 特殊值“*”与所有本地名称相匹配。 - 结果
-
一个新的
NodeList
对象包含所有匹配的Elements
。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
hasAttribute
boolean hasAttribute(String name)
返回true
在此元素上被指定给定名称的属性或具有默认值,false
否则。- 参数
-
name
- 要查找的属性的名称。 - 结果
-
true
如果此元素上被指定具有给定名称的属性或具有缺省值,false
否则。 - 从以下版本开始:
- 1.4,DOM Level 2
-
hasAttributeNS
boolean hasAttributeNS(String namespaceURI, String localName) throws DOMException
返回true
当具有给定本地名称和命名空间URI的属性在此元素上指定或具有默认值false
。
根据[ XML Namespaces ],如果应用程序希望没有命名空间,则应用程序必须使用值为null
作为方法的参数namespaceURI
。- 参数
-
namespaceURI
- 要查找的属性的命名空间URI。 -
localName
- 要查找的属性的本地名称。 - 结果
-
true
如果指定使用给定本地名称和名称空间URI的属性或具有此元件上的默认值,false
否则。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过文档公开的语言不支持XML命名空间(例如[ HTML 4.01 ])),则可能会被引发。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getSchemaTypeInfo
TypeInfo getSchemaTypeInfo()
与此元素相关联的类型信息。- 从以下版本开始:
- 1.5,DOM 3级
-
setIdAttribute
void setIdAttribute(String name, boolean isId) throws DOMException
如果参数isId
为true
,则该方法将指定的属性声明为用户确定的ID属性。 这会影响价值Attr.isId
和行为Document.getElementById
,但不会改变,可能是在使用中的任何模式,特别是这并不影响Attr.schemaTypeInfo
指定的Attr
节点。 对参数isId
使用值false
isId
声明用户确定的ID属性的属性。
要通过本地名称和命名空间URI指定属性,请使用setIdAttributeNS
方法。- 参数
-
name
- 属性的名称。 -
isId
- 属性是否为类型ID。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_FOUND_ERR:如果指定的节点不是此元素的属性,则引发。 - 从以下版本开始:
- 1.5,DOM 3级
-
setIdAttributeNS
void setIdAttributeNS(String namespaceURI, String localName, boolean isId) throws DOMException
如果参数isId
为true
,则此方法将指定的属性声明为用户确定的ID属性。 这会影响价值Attr.isId
和行为Document.getElementById
,但不会改变,可能是在使用中的任何模式,特别是这并不影响Attr.schemaTypeInfo
指定的Attr
节点。 对参数isId
使用值false
isId
声明作为用户确定的ID属性的属性。- 参数
-
namespaceURI
- 属性的命名空间URI。 -
localName
- 属性的本地名称。 -
isId
- 属性是否为类型ID。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_FOUND_ERR:如果指定的节点不是此元素的属性,则引发。 - 从以下版本开始:
- 1.5,DOM 3级
-
setIdAttributeNode
void setIdAttributeNode(Attr idAttr, boolean isId) throws DOMException
如果参数isId
为true
,则此方法将指定的属性声明为用户确定的ID属性。 这会影响价值Attr.isId
和行为Document.getElementById
,但不会改变,可能是在使用中的任何模式,特别是这并不影响Attr.schemaTypeInfo
指定的Attr
节点。 对参数isId
使用值false
来isId
声明作为用户确定的ID属性的属性。- 参数
-
idAttr
- 属性节点。 -
isId
- 属性是否为类型ID。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
NOT_FOUND_ERR:如果指定的节点不是此元素的属性,则引发。 - 从以下版本开始:
- 1.5,DOM 3级
-
-