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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Changer l'img bg d'un onglet lorsqu'on clique dessus

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Changer l'img bg d'un onglet lorsqu'on clique dessus

n°1958829
ishanshade
Posté le 19-01-2010 à 20:33:10  profilanswer
 

Bonjour,
 
Voilà, je suis confronté à un petit problème.
 
Le menu de mon site est sous forme d'onglet (chacun ayant une image background qui change en fonction du hover)
 
J'aimerais qu'à chaque fois qu'on atterrit sur une nouvelle page (via ces onglets), le background de l'onglet passe de menu-bg.png à menu-hover.png
 
Ce menu onglet étant codé sur ma page index.php, il ne m'est pas possible de modifier cela manuellement pour chacune des pages, vu que je fais appel aux pages via un include (et donc index.php?lien=page**)
 
Ainsi, dans mon Menu, nous avons
 
Rubrique1 ; Rubrique2 ; Rubrique 3
 
Voici le code de mon menu + le CSS correspondant

Code :
  1. <ul id="menu1" style="font-family:"Arial"">
  2.   <li><a href="index.php?lien=accueil">Accueil</a></li>
  3.             <li><a href="index.php?lien=ceics">Le CEICS</a></li>
  4.             <li><a href="index.php">Ev&egrave;nements notables</a>
  5.             <ul id="menu2">
  6.             <li><a href="index.php?lien=ski"><center>S&eacute;jour au Ski</center></a></li>
  7.             <li><a href="index.php?lien=bal"><center>Bal de l'IHECS</center></a></li>
  8.             <li><a href="index.php?lien=ndm"><center>Nuit des M&eacute;dias</center></a></li>
  9.             </ul>
  10.             </li>
  11.             <li><a href="index.php?lien=elections">Elections</a></li>
  12.   <li><a href="index.php?lien=membres">Membres</a></li>
  13.   <li><a href="index.php?lien=agenda">Agenda</a></li>
  14.   <li><a href="index.php?lien=photos">Photos</a></li>
  15.   <li><a href="http://ceics.lolforum.net" target="_blank">Forum</a></li>
  16.    <li><a href="index.php?lien=liens">Liens</a></li>
  17.  </ul>
  18. #menu1 {
  19. height:35px;
  20. line-height:35px;
  21. background:url(images/bg-menu.png) repeat-x;
  22. padding:0 10px;s
  23. font-size: 10pt;
  24. font-family:"Arial";
  25. }
  26. #menu1 ul {
  27. list-style-type:none;
  28. }
  29. #menu1 li {
  30. float:left;
  31. }
  32. #menu1 li a {
  33. padding:0 15px;
  34. display:block;
  35. color:#ffffff;
  36. margin-right:2px;
  37. }
  38. #menu1 li a:hover {
  39. background:url(images/bg-menu-hover.png) no-repeat center center;
  40. }
  41. #menu2 ul {
  42. list-style-type:none;
  43. }
  44. #menu2 li {
  45. float:center;
  46. width:142px;
  47. }
  48. #menu2 li a {
  49. padding:0 15px;
  50. display:block;
  51. color:#ffffff;
  52. margin-right:2px;
  53. }
  54. #menu2 li a:hover {
  55. background:url(images/bg-menu-hover2.png) no-repeat center center;
  56. width:auto;
  57. }


 
 
Si je clic sur Rubrique 2, j'aimerais que l'onglet change (que son background devienne bg-menu-hover.png au lieu de bg-menu.png), afin que l'internaute sache exactement où il est sur le site
 
Je ne sais pas si je me fais bien comprendre en fait...
 
Enfin, d'avance merci pour vos réponses!

mood
Publicité
Posté le 19-01-2010 à 20:33:10  profilanswer
 

n°1958973
ishanshade
Posté le 20-01-2010 à 11:36:13  profilanswer
 

Personne?

n°1958991
pataluc
Posté le 20-01-2010 à 12:18:33  profilanswer
 

il faut que tu rajoute une classe genre ".active" à l'onglet ouvert (que tu connais forcément puisque tu fais un include juste après). ensutie tu redéfini le background:url pour la classe ".active".

n°1958994
ishanshade
Posté le 20-01-2010 à 12:22:30  profilanswer
 

Merci pour la réponse
 
Malheureusement, je ne connais pas l'onglet ouvert, vu que mon menu se situe dans la page index.php, et c'est à partir de cette page index.php que je fais un include vers une page quelconque.
 
Ainsi, si on prend la page "liens.php", elle ne contient que le contenu de la page.

n°1959197
pataluc
Posté le 20-01-2010 à 17:32:52  profilanswer
 

si tu fais un include c'est bien que tu sais quelle page va être appelée non? donc tu fais un truc du genre:

Code :
  1. <ul id="menu1" style="font-family:"Arial"">
  2.   <li class="<? if ($page="accueil" ) print("active" ); ?>"><a href="index.php?lien=accueil">Accueil</a></li>
  3.             <li class="<? if ($page="ceics" ) print("active" ); ?>"><a href="index.php?lien=ceics">Le CEICS</a></li>
  4.             <li><a href="index.php">Evènements notables</a>
  5.             <ul id="menu2">
  6.             <li class="<? if ($page="ski" ) print("active" ); ?>"><a href="index.php?lien=ski"><center>Séjour au Ski</center></a></li>
  7.             <li class="<? if ($page="bal" ) print("active" ); ?>"><a href="index.php?lien=bal"><center>Bal de l'IHECS</center></a></li>
  8.             <li class="<? if ($page="ndm" ) print("active" ); ?>"><a href="index.php?lien=ndm"><center>Nuit des Médias</center></a></li>
  9.             </ul>
  10.             </li>
  11. </ul>


 
etc...
 
[HS]après j'aime pas cette manière d'inclure le body de la page, je préfère avoir des pages qui appellent leur header/footer, mais c'est mon avis perso...

n°1959274
ishanshade
Posté le 20-01-2010 à 21:18:59  profilanswer
 

Quand je fais ça, voilà l'erreur que j'obtiens:
 
Warning: main(agenda) [function.main]: failed to open stream: No such file or directory in /homez.65/ceics/www/test/index.php on line 58
 
Warning: main() [function.include]: Failed opening 'agenda' for inclusion (include_path='.:/usr/local/lib/php') in /homez.65/ceics/www/test/index.php on line 58
 
Et la ligne 58 de mon index.php est justement:
 
 
<?php include $page; ?>


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

  Changer l'img bg d'un onglet lorsqu'on clique dessus

 

Sujets relatifs
changer un ordre d'affichagemodifier ce script de menu avec onglet actif
[VBA Excel] Changer la couleur suite a une formuleshell simple pour changer de repertoire
Changer la langue du plug-in SVN subversion pour Eclipse ?changer l'action onclik
Changer dynamiquement le wmode des flashPoster un formulaire quand on clique sur un bouton radio
problème crash Excel 2000 après supression d'un ongletclique droit listenner
Plus de sujets relatifs à : Changer l'img bg d'un onglet lorsqu'on clique dessus


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