zoukankan      html  css  js  c++  java
  • 添加class 和 删除class

    直接用obj.className = "string"这个函数,可以直接改变对象的样式,但是如果该对象有多个class的时候,那么直接用就不适合了

    这样会把所有的class直接等于string,所以现在动手编写一个添加class和删除class的函数

    添加class:

        function addClass(obj,sClass){
            var reg = new RegExp("(\s|^)" + sClass+ "(\s|$)");
            if(!obj.className.match(reg)){
                obj.className += " " + sClass;
            };
        }

    原理是用正则去匹配当前对象的是否然后该class,如果没有的就加上,而不是改变

    删除class

        function removeClass(obj,sClass){
            var reg = new RegExp("(\s|^)" + sClass+ "(\s|$)");
            if(obj.className.match(reg)){ //判断是否有该class
                    obj.className = obj.className.replace(reg,"");
            }else{

              return "没有该class!"
          };

        };

    原理是用replace这个函数,用空的字符串去替换当前的class

    这样可以准确的移除要删除的class,而不会全删除了

  • 相关阅读:
    机房管理系统
    Red_Black_Tree C++
    Binary_Seach_Tree(BST) C++
    贪吃蛇小笔记
    转-Unix系统进程对SIGTERM、SIGUSR1和SIGUSR2信号处理
    My Dev Env
    mac gdb home-brew
    pub python
    ioctl siocgifhwaddr mac os x
    macbook与外接显示器
  • 原文地址:https://www.cnblogs.com/fyima/p/3723665.html
Copyright © 2011-2022 走看看