document.getElementsByClassName的兼容性问题

IE8及以下不支持document.getElementsByClassName()方法

兼容方法:

参数解释:

  1. getElementsByClass(classStr,eleName)
    classStr:类名,字符串
    eleName:元素名,字符串
    例如:getElementByClass('message','p');
  2. hasClass(ele,classStr)
    ele:元素对象,引用类型
    classStr:类名,字符串
function getElementsByClass(classStr,eleName){
    if (document.getElementsByClassName) {
        return document.getElementsByClassName(classStr);
    }else{
        var node=document.getElementsByTagName(eleName);
        var ele=[];
        for(var i=0;i<node.length;i++){
            if(hasClass(node[i],classStr)){
                ele.push(node[i])
            }
        }
        return ele;
    }
}

function hasClass(ele,classStr){
    var classSet=ele.className.split(/\s+/);
    for(var i=0;i<classSet.length;i++){
        if(classSet[i]==classStr){
            return true;
        }
    }
    return false;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • DOM DOM内容主要分为四部分: 什么是DOM和节点; 获取节点; 节点操作(3种); 属性操作(3种)。 什么...
    magic_pill阅读 800评论 0 1
  • 原文 https://www.kancloud.cn/dennis/tgjavascript/241852 一、节...
    LuckyS007阅读 867评论 0 0
  • 狄更斯在《双城记》里写到,“这是最好的时代,这是最坏的时代,这是智慧的时代,这是愚蠢的时代;这是信仰的时期,这是怀...
    大王世界真大阅读 328评论 0 0
  • 本书的缘起 《奇迹课程》是海伦.舒曼与威廉.赛佛两位教授基于同一共识,突然决定联袂合作而成的作品。两人都任职于纽约...
    Annie_6069阅读 487评论 0 0
  • 哗啦啦,哗啦啦。 半夜醒来,我的卧室里一片波光。 头发乱糟糟打着结,在水里飘浮像一丛海草。 我努力睁大眼睛,借着窗...
    樱桃圆子阅读 537评论 0 0