您的位置:首页 > Web前端 > HTML

HTML DOM Attribute 对象

2015-12-09 11:51 471 查看


HTML DOM 节点

在 HTML DOM (文档对象模型)中,每个部分都是节点:
文档本身是文档节点
所有 HTML 元素是元素节点
所有 HTML 属性是属性节点
HTML 元素内的文本是文本节点
注释是注释节点


Attr 对象

在 HTML DOM 中,Attr 对象表示 HTML 属性。

HTML 属性始终属于 HTML 元素。


NamedNodeMap 对象

在 HTML DOM 中,NamedNodeMap 对象表示元素属性节点的无序集合。

NamedNodeMap 中的节点可通过名称或索引(数字)来访问。


浏览器支持

IEFirefoxChromeSafariOpera
     
所有浏览器都支持 Attr 对象和 NamedNodeMap 对象。


属性和方法

属性 / 方法描述
attr.isId如果属性是 id 类型,则返回 true,否则返回 false。
attr.name返回属性的名称。
attr.value设置或返回属性的值。
attr.specified如果已指定属性,则返回 true,否则返回 false。
nodemap.getNamedItem()从 NamedNodeMap 返回指定的属性节点。
nodemap.item()返回 NamedNodeMap 中位于指定下标的节点。
nodemap.length返回 NamedNodeMap 中的节点数。
nodemap.removeNamedItem()移除指定的属性节点。
nodemap.setNamedItem()设置指定的属性节点(通过名称)。


DOM 4 警告!

在 W3C DOM Core 中,Attr (attribute) 对象从 Node 对象继承所有属性和方法。

在 DOM 4 中,Attr 对象不再从 Node 继承。

为了保证未来的代码安全,您应该避免在属性对象上使用节点对象的属性和方法:
属性 / 方法避免的理由
attr.appendChild()属性没有子节点。
attr.attributes属性没有属性。
attr.baseURI使用 document.baseURI 代替。
attr.childNodes属性没有子节点。
attr.cloneNode()使用 attr.value 代替。
attr.firstChild属性没有子节点。
attr.hasAttributes()属性没有属性。
attr.hasChildNodes属性没有子节点。
attr.insertBefore()属性没有子节点。
attr.isEqualNode()没有意义。
attr.isSameNode()没有意义。
attr.isSupported()始终为 true。
attr.lastChild属性没有子节点。
attr.nextSibling属性没有同级节点。
attr.nodeName使用 attr.name 代替。
attr.nodeType始终为 2 (ATTRIBUTE_NODE)。
attr.nodeValue使用 attr.value 代替。
attr.normalize()属性无法被正常化。
attr.ownerDocument始终是您的 HTML 文档。
attr.ownerElement这是您用来访问该属性的 HTML 元素。
attr.parentNode这是您用来访问该属性的 HTML 元素。
attr.previousSibling属性没有同级节点。
attr.removeChild属性没有子节点。
attr.replaceChild属性没有子节点。
attr.textContent使用 attr.value 代替。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: