zoukankan      html  css  js  c++  java
  • 原生javascript实现 hasClass addClass removeClass


    class OperationClass {
      hasClass(ele, cls){
        cls = cls || '';
        if (cls.replace(/s/g, '').length == 0) return false;
        return new RegExp(' ' + cls + ' ').test(' ' + ele.className + ' ');
      }

      addClass(ele, cls){
        if (!this.hasClass(ele, cls)) {
          ele.className = ele.className == '' ? cls : ele.className + ' ' + cls;
        }
      }

      removeClass(ele, cls){
        if (this.hasClass(ele, cls)) {
          let newClass = ' ' + ele.className.replace(/[ ]/g, '') + ' ';
          while (newClass.indexOf(' ' + cls + ' ') >= 0) {
            newClass = newClass.replace(' ' + cls + ' ', ' ');
          }
          ele.className = newClass.replace(/^s+|s+$/g, '');
        }
      }
    }

    var $ = new OperationClass();

    var x = $.removeClass(document.getElementsByClassName('div')[0], 'div');
  • 相关阅读:
    2018第45周日
    RabbitMQ消息的消费与持久化
    Rabbitmq的调度策略
    Rabbitmq交换器Exchange和消息队列
    RabbitMQ概念
    微服务拆分
    微服务演化
    2018第44周日
    福勒(Martin Fowler)
    微服务架构定义那点事
  • 原文地址:https://www.cnblogs.com/chefweb/p/9299285.html
Copyright © 2011-2022 走看看