@oleg20091301

Kак при клике на элемент меню добавить к нему класс active?

У меня есть меню, при клике на элемент которого с низу этого элемента должно появиться белое подчеркивания. Я написал код на js но при клике на элемент меню меня просто перебрасывает на другую страницу, а подчеркивания не появляется, хотя при клике на элемент у которого нет ссылки на страницу подчеркивание появляется. Вот код
// Получите все элементы меню
const menuItems = document.querySelectorAll('.menu__item');

// Переберите каждый элемент меню и добавьте обработчик события для клика
menuItems.forEach(item => {
    item.addEventListener('click', () => {
        // Удалите класс menu__item_active у всех элементов меню
        menuItems.forEach(item => {
            item.classList.remove('menu__item_active');
        });
        
        // Добавьте класс menu__item_active к выбранному элементу меню
        item.classList.add('menu__item_active');
    });
});


Html код

<nav class="menu">
                    <ul class="menu__list">
                         <li class="menu__item menu__item_active" id="menu__item">
                            <a href="index.html">
                                Главная
                            </a>
                        </li>
                        <li class="menu__item">
                            <a href="test.html">
                                Тесты 
                            </a>
                         </li>
                        <li class="menu__item">
                            <a href="results.html">
                                Результаты
                            </a>
                         </li>
                         <li class="menu__item">
                            <a href="about.html">
                                О нас
                            </a>
                        </li>
                        <li class="menu__item">
                            <a href="#">
                                Профиль
                            </a>
                        </li>
                        <li class="menu__item">
                            <a href="#">
                                Контакты
                            </a>
                        </li>
                     </ul>
                </nav>
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ну так вы ставите класс на текущей странице, а потом сразу загружаете другую, которая про установленный на предыдущей странице класс ничего не знает.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы