HTML DOM Attr对象

HTML DOM 节点

在 HTML DOM (Document Object Model) 中, 所有的都是 节点

  • 文档是文档节点
  • 所有 HTML 元素是元素节点
  • 所有 HTML 属性都是属性节点
  • 插入到 HTML 元素中的文本为文本节点
  • 注释是注释节点

Attr 对象

在 HTML DOM 中, Attr 对象 代表一个 HTML 属性。

HTML属性总是属于HTML元素。


NamedNodeMap 对象

在 HTML DOM 中, the NamedNodeMap 对象 表示一个无顺序的节点列表。

我们可通过节点名称来访问 NamedNodeMap 中的节点。


浏览器支持

Internet ExplorerFirefoxOperaGoogle ChromeSafari

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


属性 / 方法描述
attr.isId如果属性是 ID 类型,则 isId 属性返回 true,否则返回 false。
attr.name返回属性名称
attr.value设置或者返回属性值
attr.specified如果属性被指定返回 true ,否则返回 false
  
nodemap.getNamedItem()从节点列表中返回的指定属性节点。
nodemap.item()返回节点列表中处于指定索引号的节点。
nodemap.length返回节点列表的节点数目。
nodemap.removeNamedItem()删除指定属性节点
nodemap.setNamedItem()设置指定属性节点(通过名称)

警告 !!!

在 W3C DOM 内核中, Attr (属性) 对象继承节点对象的所有属性和方法 。

在 DOM 4 中, Attr (属性) 对象不再从节点对象中继承。

从长远的代码质量来考虑,在属性对象中你需要避免使用节点对象属性和方法:

属性 / 方法避免原因
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 替代
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值