Fork me on GitHub




(1) 2 »


Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
Bonjour,

Je cherche à mettre en évidence dans un menu le lien actif, afin d'informer l'utilisateur où il se situe dans le site.

Une idée ?

Merci.

Posté le : 30/04/2007 11:01
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Team FrXoops
Inscrit: 01/11/2004 13:00
Messages: 1823

Posté le : 30/04/2007 11:44
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
OK pour l'aspect des liens patz il n'y a aucune class prévue pour marquer le lien de la page que tu es en train de visiter.

La class :active agit pendant que le clic de la souris est enclenché et :visited agit sur tous les liens déjà visités (dont le navigateur se rappelle).

Ce n'est pas ce que je recherche, merci.

Posté le : 30/04/2007 13:24
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Team FrXoops
Inscrit: 01/11/2004 13:00
Messages: 1823
alors je n'avais pas compris ta question désolé,
regarde ici si j'ai mieux saisi

Posté le : 30/04/2007 13:32
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
Messages: 12273
On peut définir qu'un lien est actif lorsque l'url de la page affichée correspond au lien concerné.

La variable php $_SERVER['REQUEST_URI'] permet de connaître cette page.
Il faut ensuite, soit dans le fichier theme.html soit dans une module comme multimenu, écrire un peu de php qui va tester si le lien concerné correspond à la page active et dans ce cas ajouter une class de style "lienactif" (par exemple) à ce lien.

Bien évidemment la class de style "lienactif" aura été préalablement définie dans le fichier style.css.

Posté le : 30/04/2007 13:46
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
C'est exactement cela Patz sauf que je n'utilise pas multimenu.

Posté le : 30/04/2007 14:04
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
Merci Christian, je vais essayer cette méthode et je vous tiens au courant.

Posté le : 30/04/2007 14:23
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
Il doit y avoir une erreur de syntaxe php, dans mon fichier theme.html, puisque je vois '>>' sur ma page active.

Dans mon fichier theme.html:

<div id="menu">
<ul>
<li<?php if ($SERVER['REQUEST_URI']=="<{xoAppUrl}>")
echo " id=\"current\""; ?>>
<a href="<{xoAppUrl}>" <img src="<{xoAppUrl uploads/images/accueil_menu.png}>" width="20px" height="20px" name="accueil" alt="Accueil"/>Accueil</a></li>

<li<?php if ($SERVER['REQUEST_URI']=="<{xoAppUrl modules/news/article.php?storyid=7}>")
echo " id=\"other\""; ?>>
<a href="<{xoAppUrl modules/news/article.php?storyid=7}>"<img src="<{xoAppUrl uploads/images/presentation_menu.png}>" width="20px" height="20px" name="presentation" alt="Présentation"/>Présentation</a></li>

</ul>
</div>

Feuille de style:
#menu {
position: relative;
float: right;
right: 10px;
}

#menu ul {
margin: 0;
list-style: none;
}

#menu li {
float: left;
background-color: F5F5F5;
padding: 0 0 0 9px;
}


#menu img {
float: left;
margin-right: 5px;
}

#menu .other a:hover {
background-color: #3aa8e5;
}

#menu .current {
background-color: F5F5F5;
}

#menu .current a {
background-color: #F5F5F5;
color: #263C5F;
}

Posté le : 30/04/2007 15:11
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
J'ai essayé cette méthode dans mon fichier theme, toujours une erreur de syntaxe php.

<div id="menu">
<ul>
<li id="index">
<?php
if ($SERVER['REQUEST_URI'] == 'index.php') {
echo "<a class='current' href='index.php'>INDEX</a>"; }
else {
echo "<a href='index.php'>INDEX</a>"; }
?></li>
<li id="page1">
<?php
if ($SERVER['REQUEST_URI'] == 'page1.php') {
echo "<a class='current' href='page1.php'>PAGE UN</a>"; }
else {
echo "<a href='page1.php'>PAGE UN</a>"; }
?></li>
<li id="page2">
<?php
if ($SERVER['REQUEST_URI'] == 'page2.php') {
echo "<a class='current' href='page2.php'>PAGE DEUX</a>"; }
else {
echo "<a href='page2.php'>PAGE DEUX</a>"; }
?></li>
</ul>
</div>

Posté le : 30/04/2007 16:43
Partager Twitter Partagez cette article sur GG+
Re: Mettre en evidence un lien actif
Aspirant
Inscrit: 27/07/2004 16:41
De Din ch'nord
Messages: 95
Banane que je suis, la syntaxe pour le PHP est:
<{php}>
Code PHP
<{/php}>


Merci à tous.

Posté le : 30/04/2007 16:51
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

76 Personne(s) en ligne (72 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 76 | Plus ...