Bonjour à tous,
je suis entrain de créer un site en ajax et j'ai un petit souci.
En effet j'aimerai que le lien garde la même couleur une fois que l'on a cliqué dessus afin que l'internaute voit sur quelle page il est. Bien sûre dés qu'il cliquera sur un autre lien j'aimerai que le lien précédemment visité reprenne sa couleur initiale.
Quelqu'un, s'il vous plait, pourrait-il me guider (php? javascript?) car n'étant pas très fort en programmation je galère.
Merci à vous.
Bonjour Grégory,
Oui je sais avec "a:visited" mais le lien une fois que l'on a cliqué sur un autre ne reprend pas sa couleur initiale.
Et en te servant des infos $_SERVER avec PHP pour vérifier avec le lien et changer la couleur si tu es sur la page du lien ça ne fonctionnerait pas ?
@SummerlySubset vu qu'il charge ses pages en ajax le $_SERVER ne marchera pas car la page ne se recharge pas il faut obligatoirement utiliser le js pour cela
salut, si c'est en ajax, et que ta page ne recharge pas, tu peux faire comme ça ( ajax + jQuery )
En imaginant que tous tes liens soient dans une div lien, la page1 en actif par défaut
<div id='lien'>
<a href="#" class="lien_actif">page1</a>
<a href="#">page2</a>
<a href="#">page3</a>
</div>
J'ai dans mon css une classe 'lien_actif' pour justement pouvoir voir quel lien est actif ( couleur bleu par exemple )
#lien_actif{color:blue;}
// Au clic d'un des <a> qui appartiennent à la <div id='lien'>, je lance ma fonction
$('#lien a').click(function(){
// Tous mes liens perdent la classe lien_actif
$('#lien a').removeClass('lien_actif');
// Le lien cliqué prend la classe lien_actif
$(this).addClass('lien_actif');
});
Perso je fais comme ça, mais il y a beaucoup d'autres moyens, pas besoin forcément de changer la classe, le principe que je garde c'est : au clic -> je remet à zéro, puis je modifie ma cible ( this )
Par contre ça c'est bon uniquement si tu ne recharges pas la page !
J'espère t'avoir aidé un peu.
Bonne journée !