2016-02-14 2 views
-1

У меня есть раскрывающееся меню CSS, которое функционирует так, как я хочу его, за исключением одной части, нажатие на одно из элементов подменю не закрывает подменю.Скрыть меню jquery после того, как функция щелчка не работает

Большинство людей, вероятно, не заботятся об этом, потому что каждая ссылка приведет их на новую страницу, но моя остается на одной странице и вызывает функцию javascript.

Использование JQuery, я не могу скрыть подменю по клику следующим образом:

$('.sub li').click(function(){ 
    $('.sub ul').hide(); 
}); 
+3

Вы можете показать свой HTML –

+0

проверить это демо здесь - https://jsfiddle.net/3r404zf5/ – Tasos

+1

Добро пожаловать в StackOverflow. Пожалуйста, прочитайте документы [как спросить] (http://stackoverflow.com/help/how-to-ask) и [mcve] (http://stackoverflow.com/help/mcve) и обновите свой вопрос, чтобы мы могли помочь тебе. –

ответ

0

Хорошо, что вам нужно сделать, это скрыть, но затем удалить жесткий кодированный стиль от элемента, так как это позволит предотвратить парения работу:

$('.sub li').click(function(){ 
    $('.sub').hide(); 
    setTimeout(function(){ // breathing space 
     $('.sub').prop('style', ''); 
    }, 10); 
}); 

Here's a working version fiddle

+0

Он работает на скрипке. Но не работает для меня. –

+0

Еще один момент, когда время разворачивания не происходит. –

+0

Тогда у вас должно быть что-то еще, что ломает его - скрипка работает нормально, как вы говорите, - и второй раз зависание работает нормально в скрипке –

0

Класс .autoclose применяется к <ul> не <li> так исправить класс присвойте на HTML и должны работать

Смежные вопросы