getElementById、getElementsByTagName和getElementsByClass都是获取元素,而getAttribute和setAttribute都是对获取的元素属性进行操作的方法。
1.getAttribute是一个函数,参数是要查询的属性名称。getAttribute不属于document对象,所以不能通过document对象调用,他只能通过元素节点对象调用。可以与getElementsByTagName何用,获取每个<p>元素的title属性
var a1 = document.getElementsByTagName("p");
for(var i =0,j=a1.length;i<j;i++){
console.log(a1[i].getAttribute("title"));
}
2.setAttribute方法是允许我们对属性进行修改,同样它也不属于document,通过元素节点进行操作。
如:
var a1 = document.getElementById('a1');
console.log(a1.getAttribute('title'));//打印a1的title属性
a1.setAttribute('title','hello');
console.log(a1.getAttribute('title'));//打印a1的title属性
ps:setAttribute方法是第一级DOM的组成部分,它可以设置任何元素节点的任意属性。DOM 是一种适用于多种环境和多种程序设计语言的通用型API,严格遵守第一级DOM能够避免于兼容任何问题。
参考:javascript dom 编程艺术