如何在没有jQuery的情况下切换类?

时间:2016-06-26 18:42:52

标签: javascript

我正在尝试在没有jQuery的情况下切换onClick类。我写了剧本,但在我看来它错了) 我需要将--active修饰符添加到menu__button

   <div class="grid__menu">
       <i class="material-icons md-48 menu__button">dashboard</i>
   </div>

和我的JS((

   (function () {
   var menuTag = ".grid__menu i";   
   var activeModificator = "--active";
   var className = 'menu__button';
   var menu_button = document.querySelector(menuTag);    

menu_button.onclick =function() {     
   if (menu_button.classList.contains(className)) {       
     document.querySelector(menuTag).classList.add(className +      activeModificator);
     document.querySelector(menuTag).classList.remove(className);
      } else if (menu_button.classList.contains(className+activeModificator)) {
    document.querySelector(menuTag).classList.add(className);
    document.querySelector(menuTag).classList.remove(className+activeModificator);       
    } else {
        return       
        }
    };    
 })();

jsFiddle

但是正确的方法是什么?

1 个答案:

答案 0 :(得分:3)

您似乎正在使用classListclassList有一个内置的toggle,所以:

menu_button.onclick = function() {
    menu_button.classList.toggle(className);
    menu_button.classList.toggle(className + activeModificator);
};
相关问题