Я создаю раскрывающееся меню по щелчку. Когда клика нажата, выпадающее меню спускается вниз, тогда, когда что-то, кроме dropmenu, коснулось dropmenu, он возвращается назад. Осталось только сбросить всплывающее меню при повторном нажатии ссылки. Я добавил класс ссылки .act, чтобы я мог выделить его из других ссылок (чтобы затем я мог скрыть его при нажатии), но jquery не читает этот добавленный класс. Вот мой код.JQuery не читает динамически добавленный класс
function headerNav() {
$('header nav a').bind('click', function(e) {
e.preventDefault();
});
// change
$('header nav a').on('click', function() {
changeNavCont($(this));
});
//show
$('header nav a').on('click', function() {
$('.dropDownMenu').addClass('show');
$(this).addClass('act');
});
//hide
$('header nav a.act').on('click', function() {
$('.dropDownMenu').removeClass('show');
$('header nav a').removeClass('act');
});
$(document).on('click', function(e) {
if (($(e.target).closest('header nav').length === 0)) {
$('.dropDownMenu').removeClass('show');
$('header nav a').removeClass('act');
}
});
}
function changeNavCont($this) {
$('header nav a').removeClass('act');
$this.addClass('act');
var show = $this.attr('href');
$('.dropDownMenu article').removeClass('show');
$('.dropDownMenu article.' + show).addClass('show');
}
Это беспорядок, должен быть больше похож -> https://jsfiddle.net/o4o5yave/ – adeneo