DOM访问html元素(节点)的几个方法:
getElementById(),
getElementsByName(),
getElementsByTagName(),
getElementsByClassName(),
querySelector
querySelectorAll
1)getElementById
语法: document.getElementById('ID')
返回值类型:对象(object)。
根据指定的id属性值,返回id属性值等于ID的第一个对象的引用。假如对应的为一组对象,则返回该组对象中的第一个。如果无符合条件的对象,则返回null。
这个方法再简单不过,不过在ie9以下的浏览器中不区分大小写 ,而且也返回匹配name属性的元素。
2)getElementsByName()
语法: document.getElementsByName('name')
返回值类型:元素数组(类数组)。
根据元素的name属性值 返回符合条件的元素.
getElementByName()在ie浏览器下也存在id与那么混淆的问题。
3)getElementsByTagName()
语法:document.getElementsByTagName('tagname');
返回值类型:元素数组(类数组)。
会返回文档中所有的指定标签名的元素。
4)getElementsByClassName()
语法:document.getElementsByClassName('class')
返回值: 元素数组(类数组)
根据class属性值返回符合条件的元素。可以多个class一起。
ie9以下没有此方法。
5)querySelector()
语法:document.querySelector('cssselector')
返回值:obj: 对象
6)querySelectorAll()
语法:document.querySelectorAll('cssselector')
返回值:objNodelist: 元素数组(类数组)
querySelector() 和 querySelectorAll()是根据css选择器规范,他们与其他选择器的区别: 1-4是实时的,可以随意访问 ;5,6不是实时的不是通过数组选出类的不能用。而且ie7以下的版本中没有这两个方法。