problème avec menu dynamique sous firefox

WRInaute discret
Bonjour à tous,

Je reviens vers vous, car j'ai un nouveau problème dont je n'ai pas réussi à trouver de solution sur la toile.

Voila, j'ai récement installé un menu dynamique horizontal sur mon site VideoBourse.fr. Aucun problème sous IE, mais sous firefox, le navigateur ne semble pas prendre en compte les indications concernant le décallage des sous-menu, tout s'affiche à gauche.

Voila le script mis en place pour ce menu:

Code:
// http://www.editeurjavascript.com/forum/topic,7,39784,0.html
// http://www.editeurjavascript.com/scripts/scripts_navigation_1_111.php
bgcolor='#0000CC';
bgcolor0='#0000CC'; //CC0000';
bgcolor1='#0000CC'; //CC0000';
bgcolor2='#0000CC'; //CC0000';
bgcolor3='#0000CC'; //CC0000';
bgcolor4='#FF9900'; //CC0000';
bgcolor5='#0000CC'; //CC0000';
bgcolor6='#0000CC'; //CC0000';
bgcolor7='#0000CC'; //CC0000';
bgcolor8='#0000CC'; //CC0000';
bgcolor9='#0000CC'; //CC0000';


zgcolor = new Array;
zgcolor[0] = '#FF9900'; //CC0000';
zgcolor[1] = '#FF9900'; //CC0000';
zgcolor[2] = '#FF9900'; //CC0000';
zgcolor[3] = '#FF9900'; //CC0000';
zgcolor[4] = '#FF9900'; //CC0000';
zgcolor[5] = '#FF9900'; //CC0000';
zgcolor[6] = '#FF9900'; //CC0000';
zgcolor[7] = '#FF9900'; //CC0000';
zgcolor[8] = '#FF9900'; //CC0000';
zgcolor[9] = '#FF9900'; //CC0000';

document.write('<style type="text/css">');
document.write('.popper { POSITION: absolute; VISIBILITY: hidden; z-index:100; }')
document.write('#topgauche { position:absolute; z-index:100; }')
document.write('A:hover.ejsmenu {color:#FFFFFF; text-decoration:none; font-weight:bold}')
document.write('A.ejsmenu {color:#FFFFFF; text-decoration:none; font-weight:bold}')
document.write('A:hover.bleum {color:#000033; text-decoration:none; font-weight:bold}')
document.write('A.bleum {color:#000033; text-decoration:none; font-weight:bold}')
document.write('</style>')
document.write('<div style="position:relative;height:250"><DIV class=popper id=topdeck></DIV>');
/*
SCRIPT EDITE SUR L'EDITEUR JAVACSRIPT
http://www.editeurjavascript.com
*/

/*
LIENS
*/

zlien = new Array;
zlien[0] = new Array;
zlien[1] = new Array;
zlien[2] = new Array;
zlien[3] = new Array;
zlien[4] = new Array;
zlien[5] = new Array;
zlien[6] = new Array;
zlien[0][0] = '<A HREF="http://videobourse.fr/seminaire-bourse.php" CLASS=bleum>Seminaires de Formation</A>';
zlien[0][1] = 'Formation en ligne:';
zlien[0][2] = '<A HREF="http://www.videobourse.fr/debuter-en-bourse.php" CLASS=ejsmenu>Debuter en Bourse</A>';
zlien[0][3] = '<A HREF="http://www.videobourse.fr/apprendre-analyse-technique.php" CLASS=ejsmenu>Analyse Technique</A>';
zlien[0][4] = '<A HREF="http://www.videobourse.fr/analyse-fondamentale.php" CLASS=ejsmenu>Analyse Fondamentale</A>';
zlien[0][5] = '<A HREF="http://www.videobourse.fr/formation-trading.php" CLASS=ejsmenu>Les bases du Trading</A>';

zlien[1][0] = '<A HREF="http://videobourse.fr/conseil-bourse.php" CLASS=ejsmenu>Bourse</A>';
zlien[1][1] = '<A HREF="http://videobourse.fr/analyse-technique-forex.php" CLASS=ejsmenu>Forex</A>';
zlien[1][2] = '<A HREF="http://www.videobourse.fr/analyse-forex.php" CLASS=ejsmenu>Signal Alert</A>';
zlien[1][3] = '<A HREF="http://www.videobourse.fr/analyse-bourse.php" CLASS=ejsmenu>Analyses des membres</A>';
zlien[1][4] = '<A HREF="http://www.videobourse.fr/analyse-bourse.php" CLASS=ejsmenu>Conseils RSS</A>';
zlien[2][0] = '<A HREF="http://videobourse.fr/actualite-bourse.php" CLASS=ejsmenu>Bourse</A>';
zlien[2][1] = '<A HREF="http://videobourse.fr/actualite-forex.php" CLASS=ejsmenu>Forex</A>';
zlien[2][2] = '<A HREF="http://www.videobourse.fr/actualites-bourse.php" CLASS=ejsmenu>Bloomberg TV</A>';
zlien[2][3] = '<A HREF="http://www.videobourse.fr/actualite.php" CLASS=ejsmenu>BFM TV</A>';
zlien[2][4] = '<A HREF="http://www.videobourse.fr/actualite.php" CLASS=ejsmenu>Actualites RSS</A>';
zlien[3][0] = '<A HREF="http://videobourse.fr/analyses-techniques-video.php" CLASS=ejsmenu>Conseils / Analyses</A>';
zlien[3][1] = '<A HREF="http://videobourse.fr/actualite-bourse.php" CLASS=ejsmenu>News</A>';
zlien[3][2] = '<A HREF="http://videobourse.fr/reportage-bourse.php" CLASS=ejsmenu>Reportages</A>';
zlien[3][3] = '<A HREF="http://www.videobourse.fr/economie.php" CLASS=ejsmenu>Divers</A>';
zlien[3][4] = '<A HREF="http://videobourse.fr/interview.php" CLASS=ejsmenu>Interview</A>';
zlien[4][0] = '<A HREF="http://www.videobourse.fr/chat-bourse.php" CLASS=ejsmenu>Chat de discussion</A>';
zlien[4][1] = '<A HREF="http://www.videobourse.fr/annuaire-bourse.php" CLASS=ejsmenu>Annuaire</A>';
zlien[4][2] = '<A HREF="http://www.videobourse.fr/forum-bourse.php" CLASS=ejsmenu>Forum</A>';
zlien[4][3] = '<A HREF="http://www.videobourse.fr/gagner-argent.php" CLASS=ejsmenu>Programme de remuneration</A>';
zlien[4][4] = '<A HREF="http://www.videobourse.fr/agenda-bourse.php" CLASS=ejsmenu>Agenda des evenements</A>';
zlien[4][5] = '<A HREF="http://www.videobourse.fr/lexique-bourse.php" CLASS=ejsmenu>Lexique</A>';
zlien[5][0] = '<A HREF="http://www.videobourse.fr/taux-de-change-direct.php" CLASS=ejsmenu>Taux de change</A>';
zlien[5][1] = '<A HREF="http://www.videobourse.fr/cours-temps-reel.php" CLASS=ejsmenu>Cours en temps reel</A>';
zlien[5][2] = '<A HREF="http://www.videobourse.fr/agenda-bourse.php" CLASS=ejsmenu>Agenda des evenements</A>';
zlien[5][3] = '<A HREF="http://www.videobourse.fr/cours-devises.php" CLASS=ejsmenu>Cours Devises</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 = 32;

function pop(msg,pos)
{
	skn.visibility = "hidden";
	a=true
	skn.left = pos;
	var content ="<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#FFFFFF WIDTH=178><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='"+zgcolor[pass]+"'\" onMouseOut=\"this.style.background='"+bgcolor+"'\" HEIGHT=20><FONT SIZE=1 FACE=\"Verdana\">  "+msg[pass]+"</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;
document.write('<DIV ID=topgauche><TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#FFFFFF WIDTH=980><TR><TD><TABLE CELLPADING=0 CELLSPACING=1 BORDER=0 WIDTH=980 HEIGHT=32><TR>')
document.write('<TD WIDTH=178 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[0],0)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">FORMATION</FONT></a></TD>')
document.write('<TD WIDTH=150 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[1],178)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">CONSEILS / ANALYSES</FONT></a></TD>')
document.write('<TD WIDTH=125 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[2],328)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">Actualites</FONT></a></TD>')
document.write('<TD WIDTH=134 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[3],463)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">VIDEOBOURSE TV</FONT></a></TD>')
document.write('<TD WIDTH=127 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[4],597)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">SERVICES</FONT></a></TD>')
document.write('<TD WIDTH=134 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[5],724)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">OUTILS DE TRADING</FONT></a></TD>')
document.write('<TD WIDTH=134 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[6],858)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">COURTIERS EN LIGNE</FONT></a></TD>')
document.write('</TR></TABLE></TD></TR></TABLE></DIV></div>')

Pour voir concrètement le problème: http://www.videobourse.fr
Je ne vois pas ce qui cloche.

Hop, j'édite mon post pour ajouter un problème à mes problèmes... :lol: : je voudrais que les liens des catégories principales (formation, conseils / analyses ...) soient cliquables et ramènent vers d'autres pages, actuellement, lorsque l'on clique dessus seul le sous menu se dévoile, mais je ne parvient pas à le lier vers une autre page.

J'ai essayé:

Code:
document.write('<TD WIDTH=178 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[0],0)" href="http://www.videobourse.fr/formation-bourse.php" CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana">FORMATION</FONT></a></TD>')

et :
Code:
document.write('<TD WIDTH=178 ALIGN=center background="images/menutype.jpg" onMouseOver=background="images/formation-finance.jpg" onMouseOut=background="images/menutype.jpg"><A onClick="return(false)" onMouseOver="pop(zlien[0],0)" href=# CLASS=ejsmenu><FONT SIZE=1 FACE="Verdana"><a href="http://www.videobourse.fr/formation-bourse.php">FORMATION</a></FONT></a></TD>')

le second permet effectivement de créer le lien avec une autre page, mais le sous menu ne s'affiche plus.

Merci par avance. :wink:

Fabien.[/code]
 
WRInaute discret
Decidement mon premier menu dynamique (celui qui a des problemes sous firefox) est vraiment le mieux que j'ai trouvé, mais je ne comprend vraiment pas ce qui cloche sous firefoxe, c'est dommage.

Si quelqu'un a une idée, j'suis toujours preneur.

;)
 
WRInaute accro
dreamfab a dit:
Decidement mon premier menu dynamique (celui qui a des problemes sous firefox) est vraiment le mieux que j'ai trouvé, mais je ne comprend vraiment pas ce qui cloche sous firefoxe, c'est dommage.

Si quelqu'un a une idée, j'suis toujours preneur.

;)
regarde mon www j'ai le même genre de menu stylé autrement mais qui fonctionne partout. et moins dépendant je JS pour les liens donc plus probant pour les moteurs.
 
WRInaute discret
Oué merci, c'est simpa, c'est exactement ce qu'il me faut, le soucis c'est que je suis vraiment naze.

Voila concretement mon pb:

J'ai voulu copier ton menu pour le mettre sur mon site (avec d'autres dimmenssions, d'autres couleurs...) donc pour faire un premier test j'suis aller prendre ton code en cliquant sur source sur ta page, et voila ce que ça me donne:

http://videobourse.fr/cours-bourse-2.php

donc on voit bien que la rien ne se passe quand on met notre souris au dessus d'un menu principal.

A mon avis c'est parceque je n'ai pas définit les fonctions j'avascript que je (tu) utilise.

Ceci dit ça n'est que mon avis et il ne vaut pas grand chose. ^^

Donc si tu pouvais me dire ce qui manque dans mon exemple.

Merci beaucoup.
 
WRInaute accro
dreamfab a dit:
Donc si tu pouvais me dire ce qui manque dans mon exemple.
il te manque le javascript il me semble :

Code:
    window.onload=montre;

    function montre(id) {
    var d = document.getElementById(id);
    	for (var i = 1; i<=10; i++) {
    		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
    	}
    if (d) {d.style.display='block';}
    }
 
WRInaute discret
Ok merci jvais essayer avec ça

Je viens de constater quelque chose, le probleme dans mon premier script ne vient pas de ce script en lui meme, qui marche très bien quand je l'utilise seul, mais de mon index, puiceque seulement la il bug sous FireFox.

Si ton script marche ça sera formidable. Bonne soirée.


(ça fait bientot 2 heures que j'essaye de résoudre mon pb)
 
WRInaute accro
dreamfab a dit:
(ça fait bientot 2 heures que j'essaye de résoudre mon pb)

Si tu bug encore ça devrais te donner un petit coup de pouce :

-http://www.agir19.free.fr/menu.html

;-) c'est pas exactement ton menu mais c'est approchant.

tout est dans la page, HTML CSS et Javascript.
 
Discussions similaires
Haut