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谷歌火狐

posted on 2016-09-13 17:48  陌路凡歌  阅读(1718)  评论(0编辑  收藏  举报