Tout fermer, sauf l'element courant

Mammouth du PHP | 725 Messages

09 oct. 2013, 06:26

Bonjour,

Quand je clique sur un element, il affiche les sous elements, je veux une methode que lorsqu'on clique sur cette element, il s'affiche, les autres actif se ferment, et si je clique n'importe ou, l'element actif se ferme:
$('.dropdown').click(function(){
			// hide any item shown
                        $('.subMenu').hide();
			var getClicked = $(this).attr('id');
// show this one
			$('#show_'+getClicked).slideToggle();
	});
Le probleme dans ma methode, si l'utilisateur ne ferme pas le menu clique, il reste toujours ouvert, je veux que ca se ferme au click sur le document, alors j'ai essaye:
$(document).click(function() {
   $('.subMenu').hide();
});
Cette methode ferme tout, c'est bien, mais n'affiche rien :(

Merci pour votre aide

Eléphanteau du PHP | 21 Messages

15 nov. 2013, 16:05

Essaye ceci:

[javascript]
$(document).click(function(event) {
el = $(event.target);
if(el.closest('.dropdown').length == 0)
$('.subMenu').hide();
else
{
// hide any item shown
$('.subMenu').hide();
var getClicked = el.attr('id');
// show this one
$('#show_'+getClicked).slideToggle();
}
});
[/javascript]
Blog d'aide pour développeur web: http://www.yetaland.com