jQueryであれば、
$(function() {
$('.menu li a').on('click', function() {
$('.menu li a').removeClass('active');
$(this).addClass('active');
return false;
});
});
といった記述になり、クリックされた要素はthisで特定できますが、JSの場合はクリックされた要素をどのように特定しているのかがわかりませんでした。
menuItems.forEach(clickedItem => {
clickedItem.addEventListener('click', e => {
e.preventDefault();
menuItems.forEach(item => {
item.classList.remove('active');
});
clickedItem.classList.add('active');
});
});
forEachがmenuItemsの中の3つの要素1ずつに処理を行うのであれば
clickedItem.classList.add('active');で3要素すべてにactiveクラスがついてしまうと思ったのですが...
教えていただけますと幸いです。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?