Я искал похожие посты, но все они, кажется, прибегают к Jquery, который в настоящее время считается устаревшим в большинстве случаев.
Мой вопрос: как я могу изменить класс активных (в настоящее время включен тег «Projects», помеченный тегами «братья и сестры» при его нажатии?
Я действительно пытаюсь добиться результатов, используя только Vanilla Javascript и, надеюсь, метод .forEach, чтобы сделать его более функциональным.
Извините, что не предоставил JS в данный момент, кажется, я действительно борюсь с основами.
<nav id="sidebar">
<div class="toggle-btn" onclick="toggleSidebar()">
<i class="fas fa-angle-double-right fa-2x"></i>
</div>
<ul class="navbar-nav">
<li class="nav-item">
<a href="#" class="nav-link active">PROJECTS</a>
</li>
<li class="nav-item">
<a href="#" class="nav-link">CREATION PROCESS</a>
</li>
<li class="nav-item">
<a href="#" class="nav-link">BEFORE AND AFTER</a>
</li>
<li class="nav-item">
<a href="#" class="nav-link">ABOUT THE STUDIO</a>
</li>
<li class="nav-item">
<a href="#" class="nav-link">CONTACT</a>
</li>
</ul>
</nav>
РЕДАКТИРОВАТЬ: Благодаря первому ответу мне удалось выяснить, чистый и современный способ его рефакторинга на мой вкус:
const tabs = document.querySelectorAll('.nav-link');
tabs.forEach(tab => tab.addEventListener('click', toggleActiveTab));
function toggleActiveTab(e) {
tabs.forEach(tab => {
tab.classList.remove('active');
});
e.currentTarget.classList.toggle('active');
}