用原生JS实现getElementsByClass

Posted zcynine

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用原生JS实现getElementsByClass相关的知识,希望对你有一定的参考价值。

直接用jQuery里Sizzle选择器那一段源码也行,自己写了一个

 

function getByClass(oParent,sClass){
    var aEle = oParent.getElementsByTagName(‘*‘);
    var result = [];
    var re = new RegExp(‘\\b‘ + sClass + ‘\\b‘,‘i‘);
    
    for(var i=0;i<aEle.length;i++){
        if(re.test(aEle[i].className)){
            result.push(aEle[i]);
        }
    }
    
    return result;
}

 

\\b是用来去空格的,参数 ‘ i ‘ 是用来区分大小写的。

 

用起来挺方便的

以上是关于用原生JS实现getElementsByClass的主要内容,如果未能解决你的问题,请参考以下文章

用原生JS实现深拷贝

用原生JS实现深拷贝

用原生js实现ajaxjsonp

[js进阶]用原生js实现一个ajax?

vue.js的双向绑定,我们用原生js来实现

原生js实现Ajax