S'il vous plaît afficher le code qui s'applique à ce problème. De cette façon, les gens ici peuvent répondre plus rapidement et mieux sans avoir à fouiller sur votre site pour savoir ce qui est pertinent.
Quoi qu'il en soit, voici une alternative simple à ce que vous essayez de faire:
HTML
<div id="navigation">
<a id="foo" href="#"> </a>
<a id="bar" href="#"> </a>
<a id="baz" href="#"> </a>
</div>
CSS
a#foo {
background: url('foo-inactive.png') no-repeat;
}
a#foo:hover,
a#foo.active {
background: url('foo-active.png') no-repeat;
}
Cela vous donne l'effet de vol stationnaire. Faites de même pour les autres identifiants. Ajoutez un peu de remplissage pour que le lien soit suffisamment large pour afficher l'image en arrière-plan. Ou utilisez les attributs display="block"
et width/height. Maintenant, quand quelqu'un clique sur l'image, donnez-lui la classe active
qui fait, en regardant le CSS, la même chose que l'effet :hover
. Si en cliquant sur l'image que vous amène à une autre page, il suffit d'ajouter dans le code HTML (<a id="foo" class="active"...
), si vous restez sur la même page, faire quelque chose comme ceci:
jQuery
$(document).ready(function() {
// target each link in the navigation div
$('#navigation a').click(function() {
// link that you clicked
clicked = $(this).attr('id');
// make sure that all the others are not active
// except for the clicked one
$('#navigation a').each(function() {
if ($(this).attr('id') == clicked) {
$(this).addClass('active');
} else {
$(this).removeClass('active');
}
});
// prevent the default link action
return false;
});
});
Alec merci. J'ai essayé d'upvote votre réponse, mais j'ai besoin de 15 points de réputation. Certainement reviendra et vous donner des accessoires lorsque j'atteindrai 15 points. J'ai implémenté votre suggestion comme vu ici http://techavid.com/design/test3.html J'essaie d'avoir les icônes quand on clique pour rester actif sans aller à une autre page. Tout semble fonctionner à l'exception des icônes qui restent actives lorsque vous cliquez dessus. Peut-être que j'ai raté quelque chose? merci encore :) – Paul
Alec je l'ai compris. Merci - très apprécié! Paul – Paul
Vous cherchez bien :) – Alec