Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1478 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Menu JS dans PHP (relou)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Menu JS dans PHP (relou)

n°1377745
lkolrn
<comment ça marche?>
Posté le 30-05-2006 à 19:13:51  profilanswer
 

Béjor tutti !
 
 
vala je travaille (dur dur) sur un site veb "pro" (sous-entendu commercial), et moi c'est plutôt profil php (pour ce qui est du veb)...
Après ya la vebminster qui met en page tout ça, et qui s'amuse (pour mon plus grand plaisir...) à choper des scripts tout faits pour faire un joli menu en javascript, par exemple...
Après ça elle me dit : en fait c'est pas génial, car je veux que l'utilisateur puisse savoir sur quel lien de tel ou tel sous-menu il vient de cliquer, et que ce sous-menu correspondant (au lien cliqué) apparaisse toujours après le chargement de la nouvelle page.
 
Or JavaScript quand on clique sur un lien, lui il se charge en même temps que la page, et forcément il remet le menu dans son état d'origine, càd sans montrer aucun de ses sous-menus (le timide...). Donc problème... J'ai bien rajouté un vieux ?m=sm1, ?m=sm2, etc... dans mes url composant les sous-menus, m'enfin ça m'avance po à grand-chose... :sweat:  
 
<excuse_bidon_mais_quand_meme> En plus ça fait 5 ans que j'ai pas fait de JS </excuse_bidon_mais_quand_meme>, càd depuis mon IUT info :whistle:, et franchement je pensais en être débarrassé à vie de cette...
 
 
MERCI D'AVANCE, au moins pour une piste... :jap:  
 
ps : J'peux poster le code JS du menu aussi, m'en fous

mood
Publicité
Posté le 30-05-2006 à 19:13:51  profilanswer
 

n°1377766
ClD
Mon mononyme : C!d
Posté le 30-05-2006 à 19:49:34  profilanswer
 

juste une chtite remarque: il faut éviter de générer le menu du site en javascript car il y a encore beaucoup d'internauts qui désactive le javascript


---------------
NOUVEAU!! Février 2024 : j'ai créé un nouveau jeu en ligne : https://www.boblybots.com
n°1377881
lkolrn
&lt;comment ça marche?&gt;
Posté le 31-05-2006 à 00:38:49  profilanswer
 

bah vi, v essayer de lui faire accepter le truc et de le faire en php, mais j'ai un peu peur qu'elle me prenne pour une feignasse (je viens d'arriver dans la boîte), déjà que les informaticiens ont une réput' qui les précède... :whistle:  
 
Et puis sinon ca "m'intéresse" d'avoir une idée de soluce pour ce type de prob... JS doit reprendre la main pour afficher le bon sous-menu, et il doit y avoir (il y a même, c sûr) possibilité de décomposer l'url pour lire mon paramètre m. Donc je peux savoir avec JS de quel endroit du menu mon utilisateur arrive...
Par contre, j'avoue que le code JS de ce menu en question n'est pas des + clairs comme ça (pour moi), et bref je sais pas trop encore comment forcer l'affichage d'un sous-menu, càd sans utiliser un onMouseOver...

n°1377930
lkolrn
&lt;comment ça marche?&gt;
Posté le 31-05-2006 à 09:37:05  profilanswer
 

wup :whistle:

n°1377995
darklumina
Posté le 31-05-2006 à 11:17:43  profilanswer
 

et si on ne charge que une parti de la page en isolant le menu contenant du javascript ? ca marche pas ? (le comportement de javascript m'est kasi inconnu)

n°1377998
anapajari
s/travail/glanding on hfr/gs;
Posté le 31-05-2006 à 11:21:36  profilanswer
 

ton idée d'utiliser des variables "get" étaient bonnes puisque tu peux les récuperer en js.
Il faut ensuite que tu changes l'initialisation de ton menu de façon à ce qu'il prenne en compte la-dite variable.
 
Tu peux également envisager de stocker cette variable dans un cookie, solution qui à l'avantage de t'éviter de modifier tous tes liens.

n°1378064
gatsu35
Blablaté par Harko
Posté le 31-05-2006 à 12:59:59  profilanswer
 

poste le code du menu stp

n°1378472
lkolrn
&lt;comment ça marche?&gt;
Posté le 31-05-2006 à 23:14:02  profilanswer
 

je fais ça demain matin :jap:

n°1378591
lkolrn
&lt;comment ça marche?&gt;
Posté le 01-06-2006 à 09:39:06  profilanswer
 

vala le truc (rappel : ce n'est pas de moa)
 

Code :
  1. var target = 'self';
  2. categorie = new Array();
  3. // Categories du Menu
  4. categorie[0] = new Array();
  5.   categorie[0][0] = "actif";
  6.   categorie[0][1] = "Menu_1";
  7.   categorie[0][2] = "";
  8.   categorie[0][3] = "_self";
  9. categorie[1] = new Array();
  10.   categorie[1][0] = "actif";
  11.   categorie[1][1] = "Menu_2";
  12.   categorie[1][2] = "";
  13.   categorie[1][3] = "_self";
  14. // Groupe de liens
  15. /* Modifier ici les titres et liens - Vous pouvez en rajouter ou en supprimer autant de liens que vous voulez */
  16. lien = new Array();
  17. // Categorie 1 du Menu
  18. lien[0] = new Array();
  19. lien[0]["sous-menu_11"] = "page11.php?m=c1";
  20. lien[0]["sous-menu_12"] = "page12.php?m=c1";
  21. // Categorie 2 du Menu
  22. lien[1] = new Array();
  23. lien[1]["sous-menu_21"] = "page21.php?m=c2";
  24. lien[1]["sous-menu_22"] = "page22.php?m=c2";
  25. lien[1]["sous-menu_23"] = "page23.php?m=c2";
  26. <!--------------------------------------------- Ne rien modifier sous cette ligne ---------------------------------------------->
  27. function sousmenu_hide(actif) {
  28.     for (i=0; i<categorie.length; i++)
  29.         document.getElementById('menu' + i).className = i == actif ? 'sousmenu' : 'hide';
  30. }
  31. document.write("<table cellSpacing='1' cellPadding='0' width='170' border='0'>" );
  32. for (i=0; i<categorie.length; i++) {
  33.    document.write("<tbody>" );
  34.    document.write("<tr class='menu'>" );
  35.    if (categorie[i][0] == "actif" ) {
  36.     document.write("<td height='20' align='center' onMouseover=\"JavaScript:this.className='menu_selectactif'; sousmenu_hide(" + i + " );\" onMouseout=\"JavaScript:this.className='menu_nonselect'; sousmenu_hide(" + i + " );\">" );
  37. document.write("<img src='../images/nav_gauche/puce.gif' width='9' height='8' hspace='2'><a href='" + categorie[i][2] + "' target='" + categorie[i][3] + "' class='menu' onMouseover=\"JavaScript:this.className='menuhover';\" onMouseout=\"JavaScript:this.className='menu';\">" + categorie[i][1] + "</a>" );
  38.    } else {
  39.     document.write("<td height='20'  align='center' onMouseover=\"JavaScript:this.className='menu_select'; sousmenu_hide(" + i + " );\" onMouseout=\"JavaScript:this.className='menu_nonselect'; sousmenu_hide(" + i + " );\">" );
  40. document.write("<img src='../images/nav_gauche/puce.gif' width='9' height='8' hspace='2'>" + categorie[i][1]);
  41.    }
  42.    document.write("</td>" );
  43.    document.write("</tr>" );
  44.    document.write("<tr height='1'><td></td></tr>" );
  45.    document.write("<tr><td><center><table class='hide' id='menu" + (i) + "' cellSpacing='0' cellPadding='2' width='170'>" );
  46.  for (url in lien[i]) {
  47.  if (target == "blank" ) {
  48.   document.write("<tr onClick=\"JavaScript:window.open('" + lien[i][url] + "')\"><td class='sousmenu_nonselect' onMouseover=\"JavaScript:this.className='sousmenu_select';\" onMouseout=\"JavaScript:this.className='sousmenu_nonselect';\">" + url + "</tr></td>" );
  49.  } else if (target == "self" || target == "parent" || target == "top" ) {
  50.   document.write("<tr onClick=\"JavaScript:document.location.href='" + lien[i][url] + "'\"><td class='sousmenu_nonselect' onMouseover=\"JavaScript:this.className='sousmenu_select';\" onMouseout=\"JavaScript:this.className='sousmenu_nonselect';\">" + url + "</tr></td>" );
  51.  } else {
  52.   document.write("<tr onClick=\"JavaScript:top." + target + ".location.href='" + lien[i][url] + "'\"><td class='sousmenu_nonselect' onMouseover=\"JavaScript:this.className='sousmenu_select';\" onMouseout=\"JavaScript:this.className='sousmenu_nonselect';\">" + url + "</tr></td>" );
  53.  }
  54.  }
  55.    document.write("</table></center></td></tr>" );
  56. }
  57. document.write("</table>" );
  58. <!------------------------------------------------------------------------------------------------------------------------------>

n°1378597
gatsu35
Blablaté par Harko
Posté le 01-06-2006 à 09:45:36  profilanswer
 

Je préfère eviter de modifier une telle merde, je laisse ça aux autre [:moule_bite]


---------------
Blablaté par Harko
mood
Publicité
Posté le 01-06-2006 à 09:45:36  profilanswer
 

n°1378604
anapajari
s/travail/glanding on hfr/gs;
Posté le 01-06-2006 à 09:57:47  profilanswer
 

gatsu35 a écrit :

Je préfère eviter de modifier une telle merde, je laisse ça aux autre [:moule_bite]


[:cupra]

n°1378945
lkolrn
&lt;comment ça marche?&gt;
Posté le 01-06-2006 à 14:57:52  profilanswer
 

lol, j'aimerais bien dire la même chose tbh... :sweat:

n°1378975
gatsu35
Blablaté par Harko
Posté le 01-06-2006 à 15:13:32  profilanswer
 

si j'etais toi je referai completement leur menu de merde ca prendrai moins de temps


---------------
Blablaté par Harko
n°1378987
CNeo
Posté le 01-06-2006 à 15:20:36  profilanswer
 

Il me semble qu'il serait plus simple de mettre sur chaque page une class sur le lien qui correspond à cette même page au lieu de faire des trucs dynamiques de merde.
 
Après c'est que mon avis.

n°1379297
gatsu35
Blablaté par Harko
Posté le 01-06-2006 à 21:26:45  profilanswer
 

CNeo a écrit :

Il me semble qu'il serait plus simple de mettre sur chaque page une class sur le lien qui correspond à cette même page au lieu de faire des trucs dynamiques de merde.
 
Après c'est que mon avis.


Je plussoie ton avis


---------------
Blablaté par Harko

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Menu JS dans PHP (relou)

 

Sujets relatifs
Php : convertir chaine de caractère[PHP] renseigner champs formulaire avec base de données
[PHP/Javascript]menu en java
Faire des pings avec PHPcacher du code javascript grace a PHP, possible ?
[PHP] Simuler un appui de touche clavier[PHP] alimenter une liste déroulante à partir d'une bd MySQL
Ouverture en PHP de fichiers > 5 Mo chez FREE.PHP 5 : Donnez moi une petite aide SVP...
Plus de sujets relatifs à : Menu JS dans PHP (relou)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR