Page 1 sur 1
Menu déroulant
Posté : 14 janv. 2007, 13:13
par cmoi
Bonjour,
sur mon site (
www.forum-formation.fr) j'ai un code js pour un menu déroulant. Cela fonctionne très bien, sauf que le menu reste souvent déroulé et qu'il faut cliquer en dehors pour le fermer.
N'y aurait-il pas une astuce pour qu'il se ferme tout seul dès qu'on n'est plus dessus ?
Merci pour votre aide.
Posté : 14 janv. 2007, 13:26
par momox
Utilise l'attribut onmouseout

@+
Posté : 14 janv. 2007, 13:40
par cmoi
Voilà le code
Code : Tout sélectionner
<script LANGUAGE="Javascript">
<!--
var isNS = (navigator.appName == "Netscape") ? 1 : 0;
var EnableRightClick = 0;
if(isNS) document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
function mischandler()
{ if(EnableRightClick==1)
{ return true; }
else {return false; }}
function mousehandler(e)
{ if(EnableRightClick==1){ return true; }
var myevent = (isNS) ? e : event;
var eventbutton = (isNS) ? myevent.which : myevent.button;
if((eventbutton==2)||(eventbutton==3)) return false;}
function keyhandler(e) { var myevent = (isNS) ? e : window.event;
if (myevent.keyCode==96) EnableRightClick = 1;
return;}document.oncontextmenu = mischandler;
document.onkeypress = keyhandler;
document.onmousedown = mousehandler;
document.onmouseup = mousehandler;
//-->
</script>
onmouseout s'insèrerait comment ?
Posté : 14 janv. 2007, 14:13
par momox
Dans le code html tu peux le mettre non ?
@+
Posté : 14 janv. 2007, 15:28
par cmoi
ah ben oui je peux
mais comment l'écrire ? document.onmouseout= ???
Posté : 14 janv. 2007, 17:04
par Ryle
Ce n'est pas à mettre dans le javascript, mais à insérer dans le code html des menus déroulés. Du coup il s'agit simplement de l'attribut onMouseOut="..." qui déclenchera l'action de fermeture

Posté : 14 janv. 2007, 17:41
par cmoi
donc j'ai intégré le onmouseout ainsi
mais ça ne change rien. Le menu reste déroulé
Posté : 14 janv. 2007, 18:08
par momox
Oui mais faut faire une fonction qui ferme le menu, sinon c'est sur que ca ne fonctionnera pas

@+
Posté : 14 janv. 2007, 18:10
par cmoi
et ça se fait comment cette fonction ?
Posté : 14 janv. 2007, 19:21
par momox
Pour commencer, il faut savoir quel est le code html de ton menu

@+
Posté : 15 janv. 2007, 00:01
par cmoi
Le code ressemble à ça
Code : Tout sélectionner
<div Id="menu1" class="menu" onMouseOut="..." >
<div Id="menuItem1_1" class="menuItem"><font face="Arial, Helvetica, sans-serif" size="1" color="#666666"><a href="http://europoleformations.free.fr/formation/crea_OF.htm" target="cadre">créez
votre fiche</a></font></div>
Posté : 15 janv. 2007, 00:14
par momox
Tu peut faire un onmouseout="this.style.display='none';"
Normalement ca devrait marcher

Posté : 15 janv. 2007, 00:30
par cmoi
Tu peut faire un onmouseout="this.style.display='none';"
Normalement ca devrait marcher

Normalement ... sauf que les barres disparaissent l'une après l'autre !