(函数封装)获取class名称

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(函数封装)获取class名称相关的知识,希望对你有一定的参考价值。

使用原生javascript,获取类操作符时:即使使用getElementByClassName,在Firefox和IE9以下是不兼容的。Firefox下是可以用它获取的到元素而IE不行,一般框架都会实现该方法,达到在IE和Firefox下兼容的问题。

 

下面我写的这个封装,多给了他一个参数(parent),目的在于:(缩小范围)只获取特定id名称下子元素的class名称

学以致用,要学会修改,以便适合自己项目的使用。

 function getByClass (clsName,parent) {
  var oParent = parent?document.getElementById(parent):document,
      eles = [] ,
      elements = oParent.getElementsByTagName("*");
  for (var i=0;i<elements.length;i++){
       if (elements[i].className == clsName){
           eles.push (elements[i]); 
        }      
    }  
     return eles;      
}

然后我们还可以通过正则来完美获取:


function getByClass(sClass,parent) {
var oParent = parent?document.getElementById(parent):document,
eles = [];
elements = oParent.getElementsByTagName(‘*‘);

var re = new RegExp(\\b‘+sClass+\\b‘,‘i‘)

for (var i=0;i<elements.length;i++){
if (re.test(elements[i].className)){
eles.push(elements[i]);
}
}
return eles;
}

 

以上是关于(函数封装)获取class名称的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

React 函数组件与class组件的区别

React 函数组件与class组件的区别

通过js获取class类名的函数封装

封装一个通过类名获取对象的函数