$(document).click(function(event){
if (event.target !== $('#nav')) {
$('#nav').removeClass('open');
$('#navIcon').removeClass('fa-times');
$('#navIcon').removeClass('fa-align-left');
}else{
event.stopPropagation();
}
});
Данный код должен закрывать меню если целью клика не является блок с меню. Но если клик именно по данному блоку то функция останавливается, Но после того как написал его , меню вообще не открывается .
Попробуйте использовать .not()
Это что значит?
функция останавливается
if (event.target !== $('#nav')) {
event.target - элемент DOM, $('#nav') - возвращает динамически созданный объект-оберткy jQuery. Естественно, они не могут быть равны.
if (event.target.id != 'nav' && $(event.target).closest("#nav").length == 0) {
Сборка персонального компьютера от Artline: умный выбор для современных пользователей