11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'ai repris le menu d'alsa :
ici

J'ai essayé de faire disparaitre les sous menus lorsqu'il n'y avait plus la souris :
ici

Le problème que j'ai c'est lorsqu'on survole vite Menu 1 puis Menu 2 mon script affichait les sousmenu 2 mais lorsque le timeout se finissait le il les effaçait croyant effacer les sousmenu 1.

Pour eviter ça j'ai mis un wait bloquant le temps que le timeout se finissent :

var then,now; then=new Date().getTime();
now=then;
while((now-then)<delay)
{now=new Date().getTime();}
...


Le problème c'est que ça oblige à attendre à chaque fois avant d'afficher des sous menus. C'est pas terrible.

Quelqu'un voit un moyen simple de résoudre ça?
Modifié par Nicolas Pontoizeau (25 Mar 2005 - 18:43)
Nicolas Pontoizeau a écrit :

Quelqu'un voit un moyen simple de résoudre ça?


Oui.

Virer le menu déroulant.

(Désolé, c'était plus fort que moi).
Bonjour,
Quelque chose de ce genre:
1/ Dans Show, positionner une variable (globale) avec le nom du ssmenu affiche.
2/ Dans HideDelay, remettre cette même variable à "".
3/ Dans HideMenus, ne faire la boucle QUE si la variable = "".