使用类名选择元素

getElementsByClassName - 使用 className 快速选择 DOM 元素,不支持 IE8 以及低版本浏览器


getElementsByClassName()方法返回具有给定类名的元素集合的NodeList。 现代浏览器都支持。 Internet Explorer从版本9开始支持此方法。示例:


var list = document.getElementsByClassName('foo');

// get the number of selected elements
console.log(list.length);

// iterate over elements and output their HTML content
for (var i=0; i<list.length; i++)
    console.log(list[i].innerHTML);
      

getElementById()函数类似,还可以通过类名称在另一个dom中选择子元素:


var container = document.getElementById('header');
var list = container.getElementsByClassName('foo');
      

Warning: 遍历由类名选择的元素并同时修改类属性,这样做可能会早晨和预期不符合的效果

这个方法很性能很好,但是只能通过类名选择元素,其实用性受到一定的限制。 querySelectorAll()是一种更方便的方法,几乎可以由任意CSS选择器访问DOM元素。