







|
|
|
 |
| > fermeture des sous- menu dynamique onMouseOut |
[ Posté par rvgaudin ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 19-11-2002 à 18:03 | 3 messages ]
  Je n'arrive pas a modifier mon script de telle sorte que les sous menus qui s'affichent au passage de la souris se ferment, sans pour autant qu'il soit necessaire de cliquer hors des menus.
quelqu'un a la solution ?
 
|
[ Posté par julien22 ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 19-11-2002 à 20:32 | 4087 messages ]
  Hmmm... je ne suis pas un pro du JS, mais je doute que cela soit possible...
Je pense qu'on doit être obligé de cliquer à côté pour effacer le sous-menu.

| [ Posté par rvgaudin ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 20-11-2002 à 12:39 | 3 messages ]
  il existe des solutions mais qui impliquent un code HTML sur chaque page utilisant ce menu (il y en aura 15 a 20 sur mon site). Or ce que je cherche c'est précisemment garder ce script en fichier externe, de maniere a n'avoir besoin de modifier que ce script si j'ai a modifier ce menu. sinon bonjour l'usine a gaz.
| [ Posté par GhislainLavoie ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 21-11-2002 à 03:07 | 3179 messages ]
  Salut,
T'est pas oubligé d'ajouter le html a chacune des pages.
Tu peux integrer le code html dans le script avec des document.write("ton code html")
Voilà
A+, Ghislain
________________ La clarté est synonyme de bon service...
Soyez explicites avec vos demandes!!!
| [ Posté par GhislainLavoie ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 21-11-2002 à 03:33 | 3179 messages ]
  |
 Salut,
Pendant que j'y suis... voici un exemple de comment faire ça. Testé et concluant avec EI6, NS4 et NS6.
Premièrement il faudrait enlever ou mettre en commentaire ces deux ligne dans les pages ou il y a le script:
//if(document.getElementById)
//document.write('<DIV class=popper id=topdeck></DIV>');
Ensuite voici le script :
Code:
|
posYmenu = 112;
bgcolor='#006699';
bgcolor2='#6699CC';
needcenter =false;
if(!needcenter)
posXmenu = 0;
else
{ if (document.all)
posXmenu = (document.body.clientWidth/2)-(400/2);
else
posXmenu = (window.innerWidth/2)-(400/2);
}
document.write('<style type="text/css">');
document.write('.popper { POSITION: absolute; VISIBILITY: hidden; z-index:3; }')
document.write('#topgauche { position:absolute; top:'+posYmenu+'px; left:'+posXmenu+'px; z-index:10; }')
document.write('A:hover.ejsmenu {color:#FFFFFF; text-decoration:none;}')
document.write('A.ejsmenu {color:#FFFFFF; text-decoration:none;}')
document.write('</style>')
if (document.layers)
document.write('<layer class=popper id=topdeck OnMouseOver="focus_over();" OnMouseOut="focus_out();"></layer>');
else
document.write('<DIV class=popper id=topdeck OnMouseOver="focus_over();" OnMouseOut="focus_out();"></DIV>');
/*
LIENS
*/
zlien = new Array;
zlien[0] = new Array;
zlien[1] = new Array;
zlien[2] = new Array;
zlien[2] = new Array;
zlien[3] = new Array;
zlien[4] = new Array;
zlien[0][0] = '<a HREF="../oeil/O.htm" CLASS=ejsmenu TARGET="_top">Oeil et image artificielle</a>';
zlien[0][1] = '<a HREF="../transfou/T.htm" CLASS=ejsmenu TARGET="_top">Transformation de Fourier</a>';
zlien[0][2] = '<a HREF="../nume/N.htm" CLASS=ejsmenu TARGET="_top">Numérisation et quantification</a>';
zlien[0][3] = '<a HREF="../capteurs/C.htm" CLASS=ejsmenu TARGET="_top">Les capteurs de vision</a>';
zlien[0][4] = '<a HREF="../pretrai/P.htm" CLASS=ejsmenu TARGET="_top">Prétraitement des images</a>';
zlien[1][0] = '<a HREF="E1.htm" CLASS=ejsmenu TARGET="_top">Extraction de points de contour</a>';
zlien[1][1] = '<a HREF="../suivi/S1.htm" CLASS=ejsmenu TARGET="_top">Suivi de points de contour</a>';
zlien[1][2] = '<a HREF="../capteurs/C.htm" CLASS=ejsmenu TARGET="_top">Région</a>';
zlien[1][3] = '<a HREF="../capteurs/C.htm" CLASS=ejsmenu TARGET="_top">Représentation de Fourier</a>';
zlien[1][4] = '<a HREF="../capteurs/C.htm" CLASS=ejsmenu TARGET="_top">Bibliographies</a>';
zlien[2][0] = '<a HREF="../../tds/enonce.htm" CLASS=ejsmenu TARGET="_top">Enoncés </a>';
zlien[2][1] = '<a HREF="../../tds/doc.htm" CLASS=ejsmenu TARGET="_top">Documentation Cantata</a>';
zlien[2][2] = '<a HREF="../../tds/questions.htm" CLASS=ejsmenu TARGET="_top">Questions</a>';
zlien[3][0] = '<a HREF="../../bio/bio.htm" CLASS=ejsmenu TARGET="_top">Historique et Liens</a>';
zlien[4][0] = '<a HREF="../../info/info.htm" CLASS=ejsmenu TARGET="_top">Informations</a>';
var nava = (document.layers);
var dom = (document.getElementById);
var iex = (document.all);
if (nava) { skn = document.topdeck }
else if (dom) { skn = document.getElementById("topdeck").style }
else if (iex) { skn = topdeck.style }
skn.top = posYmenu+24;
function pop(msg,pos)
{
skn.visibility = "hidden";
a=true
skn.left = posXmenu+pos;
var content ="<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#000000 WIDTH=150><TR><TD><TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=1>";
pass = 0;
while (pass < msg.length)
{
content += "<TR><TD BGCOLOR="+bgcolor+" onMouseOver=\"this.style.background='"+bgcolor2+"'\" onMouseOut=\"this.style.background='"+bgcolor+"'\" HEIGHT=20><FONT SIZE=2 FACE=\"Arial\"><B> "+msg[pass]+"</B></FONT></TD></TR>";
pass++;
}
content += "</TABLE></TD></TR></TABLE>";
if (nava)
{
skn.document.write(content);
skn.document.close();
skn.visibility = "visible";
}
else if (dom)
{
document.getElementById("topdeck").innerHTML = content;
skn.visibility = "visible";
}
else if (iex)
{
document.all("topdeck").innerHTML = content;
skn.visibility = "visible";
}
}
function kill()
{
skn.visibility = "hidden";
}
document.onclick = kill;
if (document.layers)
document.write('<layer top='+posYmenu +' left='+posXmenu+' OnMouseOver="focus_over();" OnMouseOut="focus_out();">')
else
document.write('<DIV ID=topgauche OnMouseOver="focus_over();" OnMouseOut="focus_out();">')
document.write('<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#000000><TR><TD><TABLE CELLPADING=0 CELLSPACING=1 BORDER=0 WIDTH=100% HEIGHT=25><TR>')
document.write('<TD ALIGN=center BGCOLOR='+bgcolor+' onMouseOver="this.style.background=\\''+bgcolor2+'\\';pop(zlien[0],this.offsetLeft)" onMouseOut="this.style.background=\\''+bgcolor+'\\'"><a onClick="return(false)" onMouseOver="if (nava) pop(zlien[0],this.x-2)" href=# CLASS=ejsmenu><FONT SIZE=2 FACE="Arial"><B> Cours (1/2) </B></FONT></a></TD>')
document.write('<TD ALIGN=center BGCOLOR='+bgcolor+' onMouseOver="this.style.background=\\''+bgcolor2+'\\';pop(zlien[1],this.offsetLeft)" onMouseOut="this.style.background=\\''+bgcolor+'\\'"><a onClick="return(false)" onMouseOver="if (nava) pop(zlien[1],this.x-2)" href=# CLASS=ejsmenu><FONT SIZE=2 FACE="Arial"><B> Cours (2/2) </B></FONT></a></TD>')
document.write('<TD ALIGN=center BGCOLOR='+bgcolor+' onMouseOver="this.style.background=\\''+bgcolor2+'\\';pop(zlien[2],this.offsetLeft)" onMouseOut="this.style.background=\\''+bgcolor+'\\'"><a onClick="return(false)" onMouseOver="if (nava) pop(zlien[2],this.x-2)" href=# CLASS=ejsmenu><FONT SIZE=2 FACE="Arial"><B> Travaux Dirigés </B></FONT></a></TD>')
document.write('<TD ALIGN=center BGCOLOR='+bgcolor+' onMouseOver="this.style.background=\\''+bgcolor2+'\\';pop(zlien[3],this.offsetLeft)" onMouseOut="this.style.background=\\''+bgcolor+'\\'"><a onClick="return(false)" onMouseOver="if (nava) pop(zlien[3],this.x-2)" href=# CLASS=ejsmenu><FONT SIZE=2 FACE="Arial"><B> Historique et Liens </B></FONT></a></TD>')
document.write('<TD ALIGN=center BGCOLOR='+bgcolor+' onMouseOver="this.style.background=\\''+bgcolor2+'\\';pop(zlien[4],this.offsetLeft)" onMouseOut="this.style.background=\\''+bgcolor+'\\'"><a onClick="return(false)" onMouseOver="if (nava) pop(zlien[4],this.x-2)" href=# CLASS=ejsmenu><FONT SIZE=2 FACE="Arial"><B> Informations </B></FONT></a></TD>')
document.write('</TR></TABLE></TD></TR></TABLE>')
if (document.layers)
document.write('</layer>')
else
document.write("</DIV>");
var focus_menu,deuxieme,setattente,delai_disparition_menu=0000;
function attente()
{
if (deuxieme)
{
if (!focus_menu)
{
kill()
}
clearTimeout(setattente);
return;
}
setattente= setTimeout("attente()",delai_disparition_menu);
deuxieme = true;
}
function focus_over()
{
focus_menu = true;
clearTimeout(setattente);
}
function focus_out()
{
focus_menu = false;
deuxieme = false;
attente();
}
|
|
A+, Ghislain
<font size=1 FACE=arial>[ Ce Message a été édité par: GhislainLavoie le 2002-11-21 03:36 ]</font>
[ Ce Message a été édité par: GhislainLavoie le 2002-11-21 03:38 ]
________________ La clarté est synonyme de bon service...
Soyez explicites avec vos demandes!!!
| [ Posté par rvgaudin ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 25-11-2002 à 21:06 | 3 messages ]
  Merci Dude (Ghislain)
ca a marché impec et avec tres peu d'amenagements.
Hervé
| [ Posté par zonephil ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 18-01-2004 à 21:32 | 159 messages ]
  Mon problème est règlé, j'avais oublié une ligne de code lol
________________ PhilDunn
| [ Posté par sefender ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 09-03-2004 à 21:50 | 15 messages ]
  Bonsoir,
J'ai essayé de le faire les modifs avec menu dynamqiue 2 (vertical) et sa marche pas.
Le pb vien de moi ou les modifs de se script ne s'applique pas au mien ?
Merci
@+
Sef
|
|
Services email :
  Vous devez vous identifier pour profiter des services par email du forum.
|

|