Element.getAttribute() - Web API 接口参考 编辑
概要
getAttribute()
返回元素上一个指定的属性值。如果指定的属性不存在,则返回 null
或 ""
(空字符串);具体细节, 请参阅 Notes 部分。
语法
let attribute = element.getAttribute(attributeName);
上面:
attribute
是一个包含attributeName
属性值的字符串。attributeName
是你想要获取的属性值的属性名称。
例子
let div1 = document.getElementById("div1");
let align = div1.getAttribute("align");
alert(align);
// shows the value of align for the element with id="div1"
备注
当在被标记为 HTML 文档中的一个 HTML 元素上调用此方法时,getAttribute()
会先将其参数转换为小写形式。
当指定的属性不存在于元素上时,所有浏览器(Firefox、Internet Explorer、Opera 最新版本、Safari、Konqueror 以及 iCab 等等)都返回 null
,这也是当前 DOM 规范草案规定的。然而,旧的DOM 3 Core specification 认为此时正确的返回值应该是一个空字符串,一些 DOM 实现环境实现了该行为(behavior)。在 XUL (Gecko) 中,getAttribute 的实现遵从 DOM 3 Core specification,返回一个空字符串。因此,如果一个属性可能不存在于指定的元素上,在调用 getAttribute()
之前,你应该使用 element.hasAttribute()
来检测该属性是否存在。
浏览器兼容性
We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 29 | (Yes) | 23 | (Yes) | (Yes) | 6 |
DOM methods dealing with element's attributes:
Not namespace-aware, most commonly used methods | Namespace-aware variants (DOM Level 2) | DOM Level 1 methods for dealing with Attr nodes directly (seldom used) | DOM Level 2 namespace-aware methods for dealing with Attr nodes directly (seldom used) |
---|---|---|---|
setAttribute (DOM 1) | setAttributeNS | setAttributeNode | setAttributeNodeNS |
getAttribute (DOM 1) | getAttributeNS | getAttributeNode | getAttributeNodeNS |
hasAttribute (DOM 2) | hasAttributeNS | - | - |
removeAttribute (DOM 1) | removeAttributeNS | removeAttributeNode | - |
规范
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论