Simple menu déroulant problème de clic

TheBleedz -  
animostab Messages postés 3003 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voilà j'ai créer avec mes propres connaissance de ce que je connais un peu en JS, un petit script qui permet de faire un menu déroulant quand on clique sur un bouton. Voici le code JS :
<script type="text/javascript">
function afficheMenu(obj){

var idMenu = obj.id;
var idSousMenu = 'sous' + idMenu;
var sousMenu = document.getElementById(idSousMenu);

/*****************************************************/
/** si le sous-menu correspondant au menu cliqué **/
/** est caché alors on l'affiche, sinon on le cache **/
/*****************************************************/
if(sousMenu.style.display == "none"){
sousMenu.style.display = "block";
}
else{
sousMenu.style.display = "none";
}

}
</script>

Mais j'ai un problème, j'aimerais que le menu se ferme aussi quand je clique ailleurs sur la page et non pas obligatoirement sur le bouton pour fermer le menu déroulant.
Comment faire ?

Code HTML :
<div id="menu">
<div class="menu" id="menu1" onclick="afficheMenu(this)">
<a href="#">Cliquez-moi</a>
</div>
<div id="sousmenu1" style="display:none">
<div class="sousmenu">
<a href="#">Sous-Menu 1.1</a>
</div>
<div class="sousmenu">
<a href="#">Sous-Menu 1.2</a>
</div>
<div class="sousmenu">
<a href="#">Sous-Menu 1.3</a>
</div>
<div class="sousmenu">
<a href="#">Sous-Menu 1.4</a>
</div>
</div>

</div>

Merci d'avance.

3 réponses

  1. animostab Messages postés 3003 Date d'inscription   Statut Membre Dernière intervention   738
     
    Bonjour

    utilise document.onClick (fonction qui détecte un clic n'importe ou dans la page web) et associe le avec la fermeture du sous menu
    Voila
    0
  2. TheBleedz
     
    Merci de ta réponse ! Mais je voix pas du tout comment l'utiliser. Peut-on m'éclairer s'il vous plait ?
    0
  3. animostab Messages postés 3003 Date d'inscription   Statut Membre Dernière intervention   738
     
    le mieux c'est ca
    avec onmouseout quand la souris quitte le menu le menu se ferme

    <div id="menu" onmouseout= "document.getElementById(sousMenu).style.display='none'">

    Un petit merci vaut mieux qu'une grande ignorance
    0