在JavaScript中我们经常会用到getAttribute() 方法来获取指定属性名的属性值。如果您希望以 Attr 对象返回属性,请使用 getAttributeNode。目前主流浏览器均支持这个方法。
有时候HTML标签会有一些特殊的属性,只是写在标签里并没有属性值,这个时候就需要判断标签是否有特定的属性了。
比如一些常见的属性标签
<video src="movie.ogg" controls="controls" autoplay>
您的浏览器不支持 video 标签。
</video>
<input type="checkbox" name="vehicle" value="Bike" checked />
autoplay和checked 一般不会设置属性值,我们直接getAttribute 是不严谨的。另外对于自定义属性也是如此。
var d = document.getElementById("div1");
if (d.hasAttribute("align")) {
d.setAttribute("align", "center");
}
最后总结,我们可以直接使用hasAttribute方法来判断 是否有指定的属性。