2016-08-19 3 views
0

Я создал простую раскрывающуюся папку для моей рамки ..., я хочу закрыть ее, когда другие области, кроме раскрывающегося списка, щелкнули, как Bootstrap.Как закрыть мое раскрывающееся меню, когда другие области нажали jQuery?

Это мой код:

$('.ji-dropdown-click button').click(function() { 
    var animationObject = $(this).parent().find('.ji-dropdown-menu').data('animation'); 
    $(this).parent().find('.ji-dropdown-menu').toggle().addClass('animated' + ' ' + animationObject); 
}); 

Можете ли вы мне помочь? Спасибо ...

+1

попробуйте это, вы должны определить, если пользователь нажимает на внешний элемент вашего элемента. http://stackoverflow.com/questions/152975/how-to-detect-a-click-outside-an-element –

+0

http: //stackoverflow.com/questions/38561315/hide-the-drop-down-menu-when-clicking-outside/38561407#38561407 относятся к этому –

+0

Спасибо, но @AnuradhS Это было именно то, что я хотел ... Спасибо снова ... –

ответ

0

Вы можете использовать этот код:

$('body *:not(.ji-dropdown-click)').click(function() { 
    $('ji-dropdown-click').hide(500); 
}); 
+0

Спасибо, но это не сработает ..., я положил это в свою внутреннюю часть кода и вне моего кода, но всегда скрывал его ... –

+0

Хорошо. Я редактировал код. Попробуйте это и RSVP. – Maviza101

+0

Спасибо, но когда кнопка нажата, сначала покажите меню, а затем скройте его ... –

0

Попробуйте этот код:

$(document).click(function(){ 
    $('.ji-dropdown-menu').hide(); 
}); 

Он должен работать.

+0

На боковой ноте функции анимации jquery имеют низкую производительность. Я бы предложил использовать [Velocity.js] (https://github.com/julianshapiro/velocity) –

+0

Спасибо, но не работает ... –

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