Page 1 sur 1
Afficher la page active dans un menu
Posté : 18 sept. 2007, 04:11
par Invité
Bonjour à tous,
Alors voilà je vous explique :
Je voudrai pouvoir laisser en "surbrillance" la rubrique du menu ou se trouve le visiteur
J'essai de mieux m'expliquer :Quand le visiteur clique sur un lien du menu (ou une rubrique), je voudrai que ce lien reste en surbrillance ou si c'est un onglet, qu'il reste ouvert pour indiquer au visiteur qu'il se trouve sur tel ou tel rubrique...
Voici un exemple avec ce site
Developpez.com, dans cette exemple on est sur la categorie ou la page PHP
Merci
Posté : 18 sept. 2007, 05:03
par AB
Y'a de nombreuses façons pour faire ça mais la meilleure dépend de comment est fait ton site.
Si tes pages ont un nom différent tu peux utiliser la variable de serveur $_SERVER['REQUEST_URI']
et faire un truc du genre (pour des pages qui dans cet exemple se nomment prestations.php et photos.php)
<?php
function select($selec)
{
if (strpos($_SERVER['REQUEST_URI'],$selec)!==FALSE) echo ' id="select"';
}
?>
<head>
<style type="text/css">
#select a {
text-decoration: overline;
color:#FFFF99;
}
</style>
</head>
<body>
<ul class="titre">
<li<?php select('prestations')?>><a href="prestations.php">Prestations</a></li>
<li<?php select('photos')?>><a href="photos.php">Photos</a></li>
</ul>
</body>
</html>
Dans mon exemple le menu de la page sélectionnée est surlignée avec color:#FFFF99;
Posté : 18 sept. 2007, 18:51
par Joss850csi
Slt,
En fait il va y avoir un template et donc je ne sais pas comment m'y prendre ???
Qui connait comment faire ?
Posté : 22 sept. 2007, 01:26
par Joss850csi
je n'arrive pas avec ton systeme...
Tu es sur que ça fonctionne ?
Ce que je veux c'est que les boutons de la barre de menu soit differencier lorsqu'on se trouve sur le lien sur lequel il pointe.
Exemple :
Le menu contient :
| Acceuil | Download | News |
Si ont va sur la page Download il faut que le lien soit different par rapport aux autres :
| Acceuil | Download | News |
Le site est en php et je n'ai pas de frame et je n'en veux pas, a chaque fois qu'on cliques sur un liens la page complete change
Posté : 22 sept. 2007, 04:43
par AB
Notes bien que la solution que je t'ai donnée n'est qu'une parmi tant d'autre, mais dans l'exemple que tu donnes elle doit pouvoir s'appliquer sans problème.
Je te ferai un exemple pour peu que tu me donnes le nom de fichier de tes pages Acceuil, Download et News.
Posté : 22 sept. 2007, 17:51
par Joss850csi
index.php, download.php, news.php
je desespere...
Posté : 22 sept. 2007, 19:35
par AB
Si tu mets ce code dans chacune de tes pages index.php, download.php, et news.php ça devrait le faire
<?php
function select($selec)
{
if (strpos($_SERVER['REQUEST_URI'],$selec)!==FALSE) echo ' class="select"';
}
?>
<head>
<style type="text/css">
.select a {
font-weight:bold;
color: #0066CC;
}
.menu li {
font-family:Arial, Helvetica, sans-serif;
font-size:1em;
font-weight:normal;
color: #0066CC;
display:inline;
list-style-type:none;
margin:0;
padding:0;
}
.menu a {
text-decoration:none;
}
</style>
</head>
<body>
<ul class="menu">
<li<?php select('index.php')?>><a href="index.php">| Acceuil</a></li>
<li<?php select('download.php')?>><a href="download.php">| Download</a></li>
<li<?php select('news.php')?>><a href="news.php">| News |</a></li>
</ul>
</body>
</html>
EDIT j'ai remplacé id=select par class=select au cas où ce menu serait répété plusieurs fois dans une même page
Posté : 22 sept. 2007, 20:18
par Joss850csi
Slt,
Merci ça marche nickel... par contre j'ai une autre question mais je dois la poster dans une autre section :
ici
Posté : 22 sept. 2007, 20:28
par Truc
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.
Tu peux réaliser cette opération toi-même
en cliquant sur le bouton
qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).