J'essaie de créer un menu déroulant agissant comme sous-menu d'un menu principal. Le sous-menu est simplement un élément div contenant des éléments/liens. Quand un élément de menu principal est cliqué, le sous-menu descend et reste là. C'est facile, mais je veux que le sous-menu revienne si le curseur quitte le sous-menu. En d'autres termes, un simple événement "mouseout". Il semble cependant que lorsque le curseur entre dans l'un des éléments du sous-menu, l'événement 'mouseout' est déclenché. C'est ce que vous voudrez sauf, si vous y réfléchissez, car le curseur quitte l'élément du sous-menu même s'il ne quitte pas ses limites. Cependant, cela pose un problème, car je veux seulement que l'événement se déclenche si le curseur est déplacé en dehors des limites de l'élément du sous-menu.Menu déroulant animé JavaScript
Ce qu'il se résume à, est d'avoir un div dans un autre div, comme ceci:
----------------------------
| DIV-1 |
| |
| ------------- |
| | | |
| | DIV-2 | | AREA OUTSIDE DIV-1
| | | |
| | | |
| | | |
| ------------- |
| |
| |
----------------------------
Maintenant, 2 choses peuvent provoquer DIV-1 à déclencher un événement 'mouseout':
- le curseur se déplace à l'intérieur du boundries de DIV-1 à la zone en dehors de ces boundries
- le curseur se déplace à l'intérieur du boundries de DIV-1 à la zone de DIV-2
Mon but est de pouvoir distinguer ces deux occurrences les unes des autres, mais je n'ai pas été capable de comprendre comment.
Quelqu'un at-il une bonne solution à ce problème? Cela semble une caractéristique assez commune, donc quelqu'un doit l'avoir résolu.
Je recommande la lecture l'une des bibliothèques gazillion (tels que les plug-ins drupal) cela fait plutôt que de demander ici une description. – bmargulies
D'une manière ou d'une autre cela ne semble pas très attrayant pour moi. –