@Fqwd123

Событие по клику на сенсорный экран?

Как сейчас реализовано: нажимаем в меню пункт, переходим на него, и на странице этого пункта, в меню он подсвечивается( к нему добавляется класс active) .
Мне нужно сделать что бы по клику на пункт меню и в процессе перехода по ссылке, этот пункт выделялся(менялся background), а тот пункт меню на котором мы сейчас находились наоборот затухал.
Надеюсь не запутал, как это реализовать? Просто подсвечивать по клику конечно можно через active/focus в css, но что бы убрать у другого пункта класс active нужно уже js. Событие click не подходит так как это мобилки, пробовал вот так
$('.menu li').bind('touchstart click', function(){
        $(this).css('background', 'var(--red) !important');
        $('.menu li active').removeClass('active');
    });

Но почему то не работает, на какое событие вешать?
П.С. Пример с jquery, но это совсем не принципиально
  • Вопрос задан
  • 73 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Fqwd123 Автор вопроса
document.querySelectorAll('.menu li').forEach(
    (item)=>{
        item.addEventListener('touchstart', (event)=> {
            document.querySelector('.menu-item.active').classList.remove("active");
        }, false);

    }
);

Вот как заработало, одно НО, на айфонах почему то не работает. При клике цвет просто становиться тусклым
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Intspirit Краснодар
от 80 000 до 150 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽