-
- All Superinterfaces:
-
Node
- All Known Subinterfaces:
-
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
- 所有已知实现类:
-
IIOMetadataNode
public interface Element extends Node
Element
接口表示HTML或XML文档中的元素。 元素可能具有与之关联的属性; 由于Element
接口继承自Node
,因此通用Node
接口属性attributes
可用于检索元素的所有属性的集合。Element
接口上有方法可以按名称检索Attr
对象,或按名称检索属性值。 在XML中,属性值可能包含实体引用,应检索Attr
对象以检查表示属性值的可能相当复杂的子树。 另一方面,在HTML中,所有属性都具有简单的字符串值,可以安全地使用直接访问属性值的方法作为方便。注意:在DOM级别2中,方法
normalize
继承自移动它的Node
接口。
-
-
字段汇总
-
Fields declared in 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
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 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
在此元素上被指定或具有默认值,与给定的本地名称和命名空间的属性URIfalse
否则。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属性。-
声明方法的接口 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文档中的大小写如何,HTML DOM都会以规范的大写形式返回HTML元素的tagName
。
-
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
此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
)。 - 结果
-
具有指定名称的
Attr
节点(nodeName
)或null
如果没有此类属性)。
-
setAttributeNode
Attr setAttributeNode(Attr newAttr) throws DOMException
添加新属性节点。 如果元素中已存在具有该名称的属性(nodeName
),则该属性将替换为新属性。 单独替换属性节点无效。
要添加具有限定名称和名称空间URI的新属性节点,请使用setAttributeNodeNS
方法。- 参数
-
newAttr
- 要添加到属性列表的Attr
节点。 - 结果
-
如果
newAttr
属性替换现有属性,则返回替换的Attr
节点,否则返回null
。 - 异常
-
DOMException
- WRONG_DOCUMENT_ERR:如果newAttr
是从与创建该元素的文档不同的文档创建的,则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"
并且通过Document公开的语言不支持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
将其指定为属性的值。
根据[ XML Namespaces ],如果方法希望没有名称空间,则必须使用值null
作为方法的namespaceURI
参数。- 参数
-
namespaceURI
- 要创建或更改的属性的名称空间URI。 -
qualifiedName
- 要创建或更改的属性的限定名称。 -
value
- 以字符串形式设置的值。 - 异常
-
DOMException
- INVALID_CHARACTER_ERR:如果指定的限定名称不是XML名称,则根据Document.xmlVersion
属性中指定的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"
并且通过Document公开的语言不支持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"
并且通过Document公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能引发此问题 。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getAttributeNodeNS
Attr getAttributeNodeNS(String namespaceURI, String localName) throws DOMException
- 参数
-
namespaceURI
- 要检索的属性的名称空间URI。 -
localName
- 要检索的属性的本地名称。 - 结果
-
Attr
节点具有指定的属性本地名称和名称空间URI或null
如果没有此类属性)。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过Document公开的语言不支持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"
并且通过Document公开的语言不支持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"
并且通过Document公开的语言不支持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
在此元素上被指定或具有默认值,与给定的本地名称和命名空间的属性URIfalse
否则。
根据[ XML Namespaces ],如果方法希望没有名称空间,则必须使用值null
作为方法的namespaceURI
参数。- 参数
-
namespaceURI
- 要查找的属性的名称空间URI。 -
localName
- 要查找的属性的本地名称。 - 结果
-
true
如果指定了具有给定本地名称和名称空间URI的属性,或者在此元素上具有默认值,false
。 - 异常
-
DOMException
- NOT_SUPPORTED_ERR:如果实现不支持功能"XML"
并且通过Document公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能 引发此问题 。 - 从以下版本开始:
- 1.4,DOM Level 2
-
getSchemaTypeInfo
TypeInfo getSchemaTypeInfo()
与此元素关联的类型信息。- 从以下版本开始:
- 1.5,DOM Level 3
-
setIdAttribute
void setIdAttribute(String name, boolean isId) throws DOMException
如果参数isId
是true
,则此方法将指定的属性声明为用户确定的ID属性。 这会影响价值Attr.isId
和行为Document.getElementById
,但不会改变,可能是在使用中的任何模式,特别是这并没有影响到Attr.schemaTypeInfo
指定的Attr
节点。 使用值false
作为参数isId
声明作为用户确定的ID属性的属性。
要按本地名称和名称空间URI指定属性,请使用setIdAttributeNS
方法。- 参数
-
name
- 属性的名称。 -
isId
- 属性是否为类型ID。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发此异常。
NOT_FOUND_ERR:如果指定的节点不是此元素的属性,则引发此异常。 - 从以下版本开始:
- 1.5,DOM Level 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 Level 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 Level 3
-
-