public interface CharacterData extends Node
CharacterData
接口使用一组用于访问DOM中的字符数据的属性和方法来扩展Node。
为了清楚起见,这个集合是在这里定义的,而不是使用这些属性和方法的每个对象。
没有DOM对象直接对应于CharacterData
,尽管Text
和其他人确实从它继承了接口。
全部offsets
在此界面从0
开始。
如DOMString DOMString
所述,DOM中的文本字符串以UTF-16表示,即以16位为单位。 在下文中,术语16位单位在需要时使用,表示CharacterData的索引以16位为单位完成。
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 | Method and Description |
---|---|
void |
appendData(String arg)
将字符串附加到节点的字符数据的末尾。
|
void |
deleteData(int offset, int count)
从节点中删除一个16位的单位范围。
|
String |
getData()
实现此接口的节点的字符数据。
|
int |
getLength()
通过
data 的16位单元
data 和下面的
substringData 方法。
|
void |
insertData(int offset, String arg)
以指定的16位单位偏移量插入字符串。
|
void |
replaceData(int offset, int count, String arg)
用指定的字符串替换从指定的16位单位偏移开始的字符。
|
void |
setData(String data)
实现此接口的节点的字符数据。
|
String |
substringData(int offset, int count)
从节点中提取一系列数据。
|
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
String getData() throws DOMException
CharacterData
节点中的数据量进行任意限制。
然而,实施限制可能意味着节点数据的整体可能不适合单个DOMString
。
在这种情况下,用户可以调用substringData
以适当大小的片段检索数据。
DOMException
- DOMSTRING_SIZE_ERR:在实现平台上返回更多的字符,而不是匹配
DOMString
变量时引发。
void setData(String data) throws DOMException
CharacterData
节点中的数据量进行任意限制。
然而,实施限制可能意味着节点数据的整体可能不适合单个DOMString
。
在这种情况下,用户可以调用substringData
以适当大小的片段检索数据。
DOMException
- NO_MODIFICATION_ALLOWED_ERR:当节点只读时引发。
int getLength()
data
的16位单位data
和下面的substringData
方法。
这可能具有零值,即CharacterData
节点可能为空。
String substringData(int offset, int count) throws DOMException
offset
- 要提取的子字符串的起始偏移量。
count
- 要提取的16位单位数。
offset
和count
的总和超过length
,则返回到数据结尾的所有16位单元。
DOMException
- INDEX_SIZE_ERR:如果指定的offset
为负值或大于offset
中的16位单元data
,或指定的count
为负值则提升。
DOMString
其DOMString
。
void appendData(String arg) throws DOMException
data
提供访问指定的data
和DOMString
连接。
arg
- 附加的
DOMString
。
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发。
void insertData(int offset, String arg) throws DOMException
offset
- 要插入的字符偏移量。
arg
- 要插入的
DOMString
。
DOMException
- INDEX_SIZE_ERR:如果指定的offset
为负值或大于offset
中的16位单元数,则data
。
void deleteData(int offset, int count) throws DOMException
data
和length
反映了变化。
offset
- 从中开始删除的偏移量。
count
- 要删除的16位单位数。
如果offset
和count
的总和超过length
,则从offset
到数据结尾的所有16位单元都被删除。
DOMException
- INDEX_SIZE_ERR:如果指定的offset
为负值或大于offset
中的16位单元data
,或指定的count
为负,则提升。
void replaceData(int offset, int count, String arg) throws DOMException
offset
- 开始替换的偏移量。
count
- 要替换的16位单位数。
如果offset
和count
的总和超过length
,则所有16位单位到数据结尾都被替换;
(即效果与具有相同范围的remove
方法调用相同,后跟append
方法调用)。
arg
- 必须更换范围的
DOMString
。
DOMException
- INDEX_SIZE_ERR: Raised if the specified
offset
is negative or greater than the number of 16-bit units in
data
, or if the specified
count
is negative.