2016-06-26 12 views
-1

jQueryを使用せずにクラスonClickを切り替えようとしています。私は、スクリプトを書きましたが、それはそれは間違っている私には思える)私はmenu__buttonクラスにjQueryを使わずにクラスを切り替えるには?

<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

が、どのような権利を--activeの改質剤を追加する必要があります way?

+3

'classList.toggle(class)'についてはどうですか? – elclanrs

答えて

2

classListを使用しているようです。classListには組み込みi n toggle、そうです:

menu_button.onclick = function() { 
    menu_button.classList.toggle(className); 
    menu_button.classList.toggle(className + activeModificator); 
}; 
関連する問題