DOMException
DOMException是W3C DOM核心对象。DOMException接口表示一个处理的错误,当一个操作不可能执行的时候,会抛出一个异常。例如试图创建一个无效的DOM, 或通过一个不存在的节点作为参数节点操作方法。
常量列表
该接口定义了ExceptionCode整数值——向外暴露code属性——指向每种类型的错误;这些定义参考下面些常量:
- INDEX_SIZE_ERR
code 1
如果索引是负值,或是超过了允许值。例如splitText的offset参数比字符串长度还要长。
- DOMSTRING_SIZE_ERR
code 2
DOMString的特定字符数据太大。其大小显示是依赖实现的,未被DOM定义(每个浏览器的限制细节参见DOM Core)。
- HIERARCHY_REQUEST_ERR
code 3
节点不允许有新的子节点,或者新节点已经是其该节点的祖先节点。例如,尝试将Element节点塞入Text节点。
- WRONG_DOCUMENT_ERR
code 4
试图使用跨文档的节点操作。例如,appendChild的子节点来自其他文档。而不是先输出(使用importNode)。
- INVALID_CHARACTER_ERR
code 5
一个非法的或无效的字符指定一个有限制的字符串,例如元素的name.
- NO_DATA_ALLOWED_ERR
code 6
为不支持数据的节点指定数据。如Element节点本身不包含数据,其子节点包含。
- NO_MODIFICATION_ALLOWED_ERR
code 7
试图修改一个不能被修改的节点。例如,装载一个只读的节点。
- NOT_FOUND_ERR
code 8
引用的节点不存在。例如,insertBefore相关子节点不是引用的子节点。
- NOT_SUPPORTED_ERR
code 9
实现不支持的特定操作。例如使用一个节点的方法,但是此方法并没有实现,就是抛出此错误。
- INUSE_ATTRIBUTE_ERR
code 10
试图添加一个正在使用的属性。例如使用setAttributeNode引用一个已经在另一个元素使用的Attr, 而不是克隆它首先(使用cloneNode)。
- INVALID_STATE_ERR
code 11
试图使用一个不可用的对象。这种错误的抛出通常是因为某些内部原因,方法无法实现特定的操作。
- SYNTAX_ERR
code 12
无效或非法的字符串被指定。例如,用无效的CSS值设置selectorText属性的CSSStyleRule. //zxx: 我遇到该错误是因为在特定情况下,对<title>标签使用了innerHTML方法。
- INVALID_MODIFICATION_ERR
code 13
尝试修改一个节点的类型。例如,使用不匹配最初规则类型的值设置cssText属性的CSSRule.(如,为at-rule设置style-rule values值).
- NAMESPACE_ERR
code 14
操作与命名空间冲突。例如createElementNS使用的名称歪瓜裂枣。
- INVALID_ACCESS_ERR
code 15
一个属性或操作不支持指定的节点。例如,尝试在一个不含float值的CSS属性上使用getFloatValue的CSSPrimitiveValue方法。