美文网首页
关于原生JS方法:document.getElementsByC

关于原生JS方法:document.getElementsByC

作者: 会有猫惹 | 来源:发表于2017-03-04 17:35 被阅读0次

    原生JS方法:document.getElementsByClassName,对IE8及以下的浏览器都不兼容
    解决方法:

    var  divs = getClassNames('tabs_div' , 'div');  
    function getClassNames(classStr,tagName){  
          if (document.getElementsByClassName) {  
                return document.getElementsByClassName(classStr)  
          }else {  
                var nodes = document.getElementsByTagName(tagName),ret = [];           
                for(i = 0; i < nodes.length; i++) {  
             if(hasClass(nodes[i],classStr)){  
                    ret.push(nodes[i])  
             }  
          }  
          return ret;  
           }  
    }  
    function hasClass(tagStr,classStr){  
         var arr=tagStr.className.split(/\s+/ );  //这个正则表达式是因为class可以有多个,判断是否包含  
         for (var i=0;i<arr.length;i++){  
                if (arr[i]==classStr){  
                      return true ;  
                }  
         }  
         return false ;  
    }  
    

    相关文章

      网友评论

          本文标题:关于原生JS方法:document.getElementsByC

          本文链接:https://www.haomeiwen.com/subject/dyjjgttx.html