begin process at 2012 05 29 15:17:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

pb de refresh de menu


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb de refresh de menu

vendredi 17 février 2006 à 20:37:35 | pb de refresh de menu

tianet

Bonsoir,

Je voudrais faire un menu qui une fois qu'une option est sélectionnée une nouvelle page s'ouvre et que le menu reste selectionné à la bonne option. J'ai donc créer un menu dans un fichier menu.js. puis avec une fonction js indépendante je 're-colorie' la cellule correspondant à l'option sélectionnée. Cela fonctionne presque à 100% car pour que l'option reste sélectionné il faut faire un F5..
Voici mon code :
menu.js
[SCRIPT]
color1='#000000';
bgmenu='#B7A599'; // cellule du menu sélectionné
color3='#FFFFFF';
bgsousmenu='#E0D4C6';// cellule du sous menu sélectionné
document.write('<style type="text/css">');
document.write('.popper { POSITION: absolute; VISIBILITY: hidden; z-index:15; left: 99px;')
document.write('#topgauche { position:absolute;  z-index:10; }')
document.write('</style>')
document.write('<div style="position:relative;height:25"><DIV class=popper id=topdeck></DIV>');

/* Définition du sous menu */
zlien = new Array;
zlien[0] = new Array;
zlien[0][0] = '<td class=\"StyleSMenu\" height=\"19\" width=\"100\" onclick=\"menuClickPhp(\'realisation\')\" onMouseOver=\"this.style.color=\''+color1+'\';this.style.background=\''+bgsousmenu+'\'\" onMouseOut=\"this.style.color=\''+color1+'\';this.style.background=\''+bgmenu+'\'\">Professionnelles</td>';
zlien[0][1] = '<td class=\"StyleSMenu\" height=\"19\" width=\"100\" onclick=\"menuClickPhp(\'realisation\')\" onMouseOver=\"this.style.color=\''+color1+'\';this.style.background=\''+bgsousmenu+'\'\" onMouseOut=\"this.style.color=\''+color1+'\';this.style.background=\''+bgmenu+'\'\">Privées</td>';
zlien[0][2] = '<td class=\"StyleSMenu\" height=\"19\" width=\"100\" onclick=\"menuClickPhp(\'realisation\')\" onMouseOver=\"this.style.color=\''+color1+'\';this.style.background=\''+bgsousmenu+'\'\" onMouseOut=\"this.style.color=\''+color1+'\';this.style.background=\''+bgmenu+'\'\">Mobilier</td>';

if(document.getElementById)
{
 skn = document.getElementById("topdeck").style;
 skn.left = 99;
}

/* Affiche un sous menu */
function pop(msg,pos)
{
 skn.visibility = "hidden";
 a=true
 skn.top = pos;
 var content ="<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#000000 HEIGHT=19 WIDTH=300><TR height=19><TD HEIGHT=19><TABLE WIDTH=300 HEIGHT=19 BORDER=0 CELLPADDING=0 CELLSPACING=4><tr HEIGHT=19>";
 pass = 0
 while (pass < msg.length)
 {
  content += msg[pass];
  pass++;
 }
 content += "</tr></TABLE></TD></TR></TABLE>";
 document.getElementById("topdeck").innerHTML = content;
 skn.visibility = "visible";
}

/* permet de selectionner une page lorsque on clic sur un menu*/
function menuClickPhp(mnu)
{
 document.location = "./"+mnu+".php";
}

function kill()
{
 if(document.getElementById)
  skn.visibility = "hidden";
}
/* modifier la couleur de la cellule, cache le sous menu réalisation,
et change la couleur de la cellule qui avait un sous menu sélectionné */

function menu(msg,obj)
{
 obj.style.background = color1;
 msg.style.background = bgmenu;
 skn.visibility = "hidden";
}

/* modifier la couleur de la cellule qui a un sous menu sélectionné */
function menu1(obj)
{
 obj.style.background = bgmenu;
}

document.onclick = kill;

if(document.getElementById)
{
 document.write('<DIV ID=topgauche><TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#000000 WIDTH=100 HEIGHT=130><TR><TD><TABLE CELLPADING=0 CELLSPACING=1 BORDER=0 WIDTH=100 HEIGHT=130>')
 document.write('<tr height=18><TD WIDTH=100 </TD></tr>')
 document.write('<tr height=19><TD WIDTH=100 ALIGN=left id="menu_esprit" class="Style1" onclick="menuClickPhp(\'esprit\')" onMouseOver=menu(this,document.getElementById(\"realisation\")) onMouseOut="this.style.color=\''+color3+'\';this.style.background=\''+color1+'\'" >L\'ESPRIT</TD></tr>')
 document.write('<tr height=19><TD WIDTH=100 ALIGN=left id="menu_services" class="Style1" onclick="menuClickPhp(\'services\')" onMouseOver=menu(this,document.getElementById(\"realisation\")) onMouseOut="this.style.color=\''+color3+'\';this.style.background=\''+color1+'\'" >SERVICES</TD></tr>')
 document.write('<tr height=19><TD WIDTH=100 HEIGHT=19 ALIGN=left id="realisation"class="Style1" onMouseOver="this.style.color=\''+color3+'\';this.style.background=\''+bgmenu+'\';pop(zlien[0],56)" onMouseOut=menu1(this) >REALISATIONS</TD></tr>')
 document.write('<tr height=19><TD WIDTH=100 ALIGN=left id="menu_actualite" class="Style1" onclick="menuClickPhp(\'actualites\')" onMouseOver=menu(this,document.getElementById(\"realisation\")) onMouseOut="this.style.color=\''+color3+'\';this.style.background=\''+color1+'\'">ACTUALITES</TD></tr>')
 document.write('<tr height=19><TD WIDTH=100 ALIGN=left id="menu_contact" class="Style1" onclick="menuClickPhp(\'contact\')" onMouseOver=menu(this,document.getElementById(\"realisation\")) onMouseOut="this.style.color=\''+color3+'\';this.style.background=\''+color1+'\'">CONTACT</TD></tr>')
 document.write('<tr height=17><TD WIDTH=100 </TD></tr>')
 document.write('</TABLE></TD></TR></TABLE></DIV>')
}
document.write('</div>');

[/SCRIPT]

fonction.js :
[SCRIPT]
function hightlight(idmenu)
{
 if (idmenu=='menu_actualite')
 {
  document.getElementById('menu_actualite').style.background = "#B7A599";
 } 
 if (idmenu=='menu_services')
 {
  document.getElementById('menu_services').style.background = "#B7A599";
 }
 if (idmenu=='menu_esprit')
 {
  document.getElementById('menu_esprit').style.background = "#B7A599";
 }
 if (idmenu=='menu_contact')
 {
  document.getElementById('menu_contact').style.background = "#B7A599F";
 }
}

[/SCRIPT]

Dans mes pages php:
[SCRIPT]
<td>
<SCRIPT LANGUAGE="JavaScript" SRC="menu.js"></SCRIPT>
<script type="text/javascript">hightlight('menu_esprit');</script>
</td>

[/SCRIPT]

Merci de votre aide



Cette discussion est classée dans : menu, style, document, write, getelementbyid


Répondre à ce message

Sujets en rapport avec ce message

Menu deroulant, cliquable ? [ par TiotBour ] Bonjour,Voila, j'ai un probleme avec un menu deroulant.C'est un menu que j'ai récuperer je ne sais plus ou, quand on passe la souris sur les categorie code compatible Mozilla et IE [ par salim81 ] bonjour a tous! j'ai des script javascript qui sont compatible a Mozilla et les meme script en changeant bien sur quelques fonction compatible IE.je c Menu déroulant avec contenu sélectif [ par helln06 ] Bonjour à tous, Parfaitement débutante en JS, j'essaye désespéremment depuis plusieurs jours d'adapter un script à mon cas de figure...Il s'agit d'un Disparition d'un sous-menu avec setTimeout() [ par sebalex ] Bonjour à tous, Voici le code d'un menu que j'ai repris et adapté à mes besoins. J'aimerais ajouter la fonction "setTimeout()" pour que le sous-menu pb avec un formulaire select [ par ahah38 ] Bonjour, J'ai besoin d'aide sur un formulaire select. Je souhaite réaliser un carnet de route en utilisant un formulaire select. Les visiteurs pourron Commande Onclick agrandir image + afficher du texte [ par pharen ] bonjour à tous je souhaite réaliser une gallery photos ainsi les photos sont sur la page en petite taille. je click sur une photo et elle s'agrandit compatibilité javascript [ par camellion2 ] Bonjour a tous, Je suis novice en programmation et je me suis fait un petit site web pour me simplifier la vie au taf. Le problême c'est qu'au bureau Urgent!problème de fonction pour afficher un tableau [ par tagadax ] Bonjour j'ai un problème, j'ai un projet a terminer pour lundi, et je suis bloqué pour afficher un tableau voici ma fonction : [code=js]function decis onchange sous IE [ par j3r3m067 ] Bonjour, voila j'ai fait un script sous firefox qui m'affcihe une div en fonction de la valeur de la selection. je joins mes code html et js biensur problème avec un menu [ par 77marsmars77 ] Bonjour à tous, J'ai un petit souci avec mon menu. Quand je clique sur le menu 1 il m'affiche les sous menus1. là c'est ok. Quand je clique sur le lie


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales