0
クラスノードリストでJavaScriptイベントを切り替えようとしています。私は以下の問題の簡略版を完成させました。クラスノードリストのイベントをトグルする方法
初期イベントは実行されていますが、ボタンを赤に戻す2番目のイベントは機能していないようですか? JSとCodepenへのリンクを以下に示します。
Codepenはここにある:https://codepen.io/emilychews/pen/EXmzbd?editors=1010
JS
var clicked = false;
var $mainMenuButton = document.getElementsByClassName('desktopmenubutton');
if (clicked === false) {
for (h = 0; h < $mainMenuButton.length; h+=1) {
$mainMenuButton[h].addEventListener('click', function (e){
e.currentTarget.style.background = "black";
clicked = true; // change clicked state to true
});
}
} else {
for (i = 0; i < $mainMenuButton.length; i+=1) {
$mainMenuButton[i].addEventListener('click', function (e){
e.currentTarget.style.background = "red";
clicked = false;
});
}
}
あなたの要素に*のアクティブ化*または* unactivate *のEventListenerを割り当てるのいずれか。それはあなたの問題に本当に適合しません –