getElementsByClassName在HTML5出现之后诞生,给DOM编程添加了新的元素,注入了新活力,但是一开始这个它并不支持IE9.0一下的浏览器,下面一段简单的代码让其可以更好的支持IE浏览器
/**
* node是表示dom树的搜索起点,Classname是需要搜索的类名。
* 如果传入的节点上已经存在了适当的getElementsByClassName,就直接返回相应的节点列表
* 如果不支持该方法,新函数会遍历所有的标签,查找相应的类名的元素
* */
function getElementsByClassName(node, Classname){
if(node.getElementsByClassName){
//使用新方法
return node.getElementsByClassName(Classname);
}else{
var results=new Array();
var elems=node.getElementsByTagName("*");
for (var i=0; i<elems.length;i++) {
if(elems[i].className.indexOf(Classname)!=-1){
results[results.length]=elems[i];
}
return results;
}
}
}