zoukankan      html  css  js  c++  java
  • 增加类,删除类,查找类

    //查找类

    function getElementsByClassName(parent,tagName,className){   
      var aEle=parent.getElementsByTagName(tagName);
      var arr=[];
      for(var i=0; i<aEle.length; i++)
      {
        var aClassName=aEle[i].className.split(' ');  //....................(以空格为准)在拆分一次
        for(var j=0; j<aClassName.length; j++)
        {
          if(aClassName[j]==className)
          {
            arr.push(aEle[i]);
            break; //.............................如果找到一个就跳出循环
          }
        }
      }
      return arr;
    }

    //判断有没有重复的  用来配合增加类和删除类来用的

    function arrIndexOf(arr,v)
    {
      for(var i=0; i<arr.length; i++)
      {
        if(arr[i]==v)
        {
          return i;
        }
      }
      return -1;
    }

    // 添加class函数
    function addClass(obj,className)
    {
       if(obj.className=='')   //.........................判断对象原来有没有类 没有就直接添加类
       {
          obj.className=className;
       }
       else{
        var arr2=obj.className.split(' ');
        var cun=arrIndexOf(arr2,className);
        if(cun == -1){   //..............................判断对象原来没有这个类 然后在添加
          obj.className +=' '+className;
        }
      }
    }

    //删除类函数

    function removeClass(obj,className)
    {
      if(obj.className != '')
      {
        var arr2=obj.className.split(' ');
        var cun=arrIndexOf(arr2,className);
        if(cun != -1){
          arr2.splice(cun,1);   //...................................................splice(index,howmany,item1)
          obj.className=arr2.join(' ');
        }
      }

    }

    知识点:

    splice(index,howmany,item1)

      index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。

      howmany:必需。要删除的项目数量。如果设置为 0,则不会删除项目。

      item1:可选。向数组添加的新项目。

  • 相关阅读:
    使用GoogleCode作SVN服务器的一些问题及解决办法
    【转】hibernate中的映射文件xxx.hbm.xml详解总结
    Connection cannot be null when 'hibernate.dialect' not set
    <mvc:view-controller path=""/>标签的作用
    mysql 5.7.18版本 sql_mode 问题
    搭建Spring所需的各类jar包汇总详解
    WEB-INF目录与META-INF目录的作用
    【转】NPIV
    Java中继承thread类与实现Runnable接口的区别
    centos6.5 配置本地yum源
  • 原文地址:https://www.cnblogs.com/zhengyan/p/4990861.html
Copyright © 2011-2022 走看看