来源:2-1 解决IE兼容性问题

妈咪妈咪哄

2014-08-04 17:07

这里不能用正则把className分割一下,然后用分割后的数组里面跟传进来的className进行比较么,我觉得更合理些

写回答 关注

1回答

  • 慕虎7188715
    2016-01-22 22:31:31

    我没用正则分割,而是把所有的类名按空格分割成数组,再遍历数组中的每项判断是否等于需要的类名。代码如下:

    function className(name){
      //如果浏览器支持getElementsByClassName则会返回所有类名叫name的,如果不支持才会遍历每个类名
      if(document.getElementsByClassName){
         return document.getElementsByClassName(name);
      }
      var doms=document.getElementsByTagName("*");
      var arr=[];
      for(var i=0;i<doms.length;i++){
         var txt=doms[i].className.split(" ");
         for(j=0;j<txt.length;j++){
            if(txt[j]==name){
               arr.push(doms[i]);
            }
         }
      }
      return arr;
    }

用JS实现购物车特效

通过JavaScript实现类似淘宝网络购物车功能效果

43240 学习 · 176 问题

查看课程

相似问题