JS兼容getElementsByClassName

2023-03-14,,

getElementsByClassName是通过class来获取DOM,但是IE8及以下不能兼容。这里做了一下兼容性。

HTML:

 <div  class="pox">我是pox</div>

兼容JS:

function getByClassName(ClassName){
if(document.getElementsByClassName){
return document.getElementsByClassName(ClassName);
}else{
var aEle=document.getElementsByTagName('*');
var arr=[];
for(var i=0;i<aEle.length;i++){
if(aEle[i].className==ClassName){
arr.push(aEle[i])
}
}
return arr;
}
}

测试:

window.onload=function(){
function getByClassName(ClassName){
if(document.getElementsByClassName){
return document.getElementsByClassName(ClassName);
}else{
var aEle=document.getElementsByTagName('*');
var arr=[];
for(var i=0;i<aEle.length;i++){
if(aEle[i].className==ClassName){
arr.push(aEle[i])
}
}
return arr;
}
}
var Box=getByClassName('pox')[0];
alert(Box.innerHTML); }

结果:

IE7谷歌火狐

JS兼容getElementsByClassName的相关教程结束。

《JS兼容getElementsByClassName.doc》

下载本文的Word格式文档,以方便收藏与打印。