Fab 53
-
26 mars 2007 à 18:54
Serge_La
Messages postés407Date d'inscriptionlundi 19 mars 2007StatutMembreDernière intervention 3 mars 2009
-
26 mars 2007 à 22:11
Salut à Tous,
Voila j'ai un soucis de programmation javascript.
Je veux faire un menu puis un sous menu. Je voudrais que lorsque le visiterr passe sa souris sur le titre, le sous menu apparaissent. Et c'est à partir de la que vient le problème :
1- ca ne marche pas quand on passe la souris dessus mais seulement quand on clique sur l'image
2- Sur Mozilla, le sous menu apparait bien par contre sur IE, il l'affiche sur plusieurs lignes, autant de lignes que de sous menu.
Voici le code de la partie <head></head>, la partie body étant juste l'appel de la fonction generate()
<script language="JavaScript">
var couleur1 = ""; // Couleur de fond du menu
var couleur2 = ""; // Couleur de surlignement
var couleurBordure = ""; // Couleur de la bordure
var couleurTexte = ""; // Couleur du texte
var police = "Arial"; // Police utilisée pour le texte
var tailleTexte = 12; // Taille du texte
var largeurMenuTotale = 834; // Largeur totale du menu
var largeurMenuGauche = 600; // Largeur de la partie gauche du menu
var hauteurMenuTotale = 25; // Hauteur du menu
// IMPORTANT : Nombre de menus
var nbMenu = 8; //Nombre de menu principaux
var savTab=""; // Ne pas modifier
var menu = new Array(nbMenu) // Ne pas modifier
var sousMenuTitre = new Array(); // Ne pas modifier
var sousMenuLien = new Array(); // Ne pas modifier
var sousMenuTarget = new Array(); // Ne pas modifier
for(i=0; i<nbMenu; i++) { // Ne pas modifier
sousMenuTitre[i] = new Array(); // Ne pas modifier
sousMenuLien[i] = new Array(); // Ne pas modifier
sousMenuTarget[i] = new Array();// Ne pas modifier
}
// Pour chaque sous-menu, renseignez son titre, son lien et sa cible
// [0][x] : Correspond à tous les sousmenus du menu Javascript
sousMenuTitre[0][0] = "Exemples "; // Titre du sous menu
sousMenuLien[0][0] = "https://xxxvideoporn.xxx/"; // Lien du sous menu
sousMenuTarget[0][0] = "_blank"; // Cible du sous menu
// [1][x] : Correspond à tous les sousmenus du menu Php
sousMenuTitre[1][0] = "Script ";
sousMenuLien[1][0] = "https://xxxvideoporn.xxx/";
sousMenuTarget[1][0] = "_blank";
// [2][x] : Correspond à tous les sousmenus du menu Contact
sousMenuTitre[2][0] = "Webmaster";
sousMenuLien[2][0] = "https://xxxvideoporn.xxx/";
sousMenuTarget[2][0] = "_blank";
/*
NE PAS MODIFIER SOUS CETTE LIGNE---------------------------
*/
function ouvrirLien(destination,target)
{
switch(target){
case "_blank":
window.open(destination);
break;
case "_top":
window.top.location.href = destination;
break;
default:
window.top.parent.frames[target].location.href = destination;
break;
}
}
function ecrire(id)
{
// on affiche le menu
codeHtml = " ";
for(j=0;j<sousMenuTitre[id].length;j++)
{
codeHtml += "<td onmouseover='ouvrirLien(\"" + sousMenuLien[id][j] + "\",\"" + sousMenuTarget[id][j] + "\")'>" + sousMenuTitre[id][j] + " ";
}
// codeHtml += "</td></tr>";
document.getElementById("menu").innerHTML = codeHtml;
}
function changeCouleur(tab,type)
{
switch(type){
case 0 :
// mouseover
if(tab != savTab)
tab.bgColor = couleur2;
break;
case 1 :
// mouseout
if(tab != savTab)
tab.bgColor = couleur1;
break;
case 2 :
// clic!
sav = savTab;
savTab = tab;
changeCouleur(sav,1);
tab.bgColor = couleur2;
break;
}
}
function generate()
{
// Génération du menu
codeHTML = "<table width='834' border='0' cellspacing='0' cellpadding='0'><tr>";