getElementsByClassName( ): 获取指定类名的所有元素
getElementsByClassName( )方法返回文档中所有指定类名的元素集合,自动创建并存入NodeList对象。
NodeList对象是一个有顺节点列表。NodeList对象----我们可以通过节点列表中的下标来访问列表中的节点。如数组一样,NodeList属性有length属性,表示NodeList集合里元素的个数,可以通过循环的方法一次获取每个元素并对其属性进行设置。
使用方法:var a=document.getElementsByClassName("symbol");------------------即将页面中所有class属性为“symbol”的元素全部存到集合a中; var b=document.getElementsByClassName("symbol").length;---------即将页面中所有class属性为“symbol”的元素的个数存到b中;
注:该方法中必须有参数,类型为String类型,一个参数用引号引起来,多个参数用空格隔开,如"symbol class"
getElementsByClassName( )方法在几个重要的浏览器中支持的最低版本
谷歌 | IE | 火狐 |
4.0 | 9.0 | 3.0 |
function getClassName(abc){
if (!document.getElementsByClassName) {
var list=document.getElementsByTagName('*');
var arr=[];
for (var i=0;i<list.length;i++) {
if(list[i].className==abc){
//在浏览器版本不支持该方法时使用className属性
arr.push(list[i]);
}
}
return arr;
} else{
return document.getElementsByClassName(abc);
}
}