@Keda37

Почему функция click не добавляет необходимые классы?

На сайте имеется примерно такое меню.

Подразумевалось что при клике на Инфо подменю появляется и скрывается при повторном клике.

На некоторых страницах (в данный момент на главной) при клике на ИНФО код не срабатывает, при просмотре DOM дерева при клике происходит розовая подсветка и пропадает
consol.log при каждом клике добавляет 34 ошибки\пункта, и так каждый раз.

Смена toggle на addСlass ни к чему не приводит.

Ошибка плавающая, порой всплывает на разных страницах, сегодня не уходит с главной. Все скрипты/плагины удалял, кэш чистил, всё равно одно и то же, при этом на других страницах скрипт срабатывает как надо.

P.S: Проблемный сайт.
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
andead
@andead
друпал девелопер, фрилансер
Если в друпале пользуетесь Behaviors, то внутри обязательно надо пользоваться context и once():

$("a.nolink", context).once().click(function () {
  $(this).siblings(".menu").slideToggle();
});


RTFM
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@AlexanderZe
Интересующийся
Извините за мой какашечный jQuery, но не проще ли так?
$('.menu__link').click(function(){
  $(".menu__item").removeClass('active');
  $(this).parent().addClass('active');
});
Ответ написан
Ваш ответ на вопрос

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

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