2010-10-27 4 views
2

Salut il, c'est ma première fois ici - s'il vous plaît allez-y doucement sur moi!Comment ajouter et supprimer un état actuel à un lien lorsqu'un autre est cliqué en utilisant jQuery

Je me bats pour trouver une réponse à ma question est la suivante:

Comment ajouter et supprimer une classe CSS .current à un lien lorsqu'un autre lien est cliqué. Par exemple, en utilisant ce code:

<a class="boldthislink">Bold me?</a>
<a class="boldhim">bold him</a>
<a class="unboldhim">unbold him</a>

Je veux faire le premier lien gras en cliquant sur le lien 2ème puis en cliquant sur le caractères normaux troisième lien. Est-ce possible?

Pour un autre exemple,

Mon site dev est ici: Karls dev site

Sur mon site dev Je veux faire le souligner/gras 'fond' lien <a> lorsque vous cliquez sur 'Next' sous le premier paragraphe du texte, qui vous enverra également à la prochaine diffusion comme il le fait actuellement. Ensuite, sur la page suivante, lorsque vous cliquez sur 'Précédent ou suivant' le lien 'arrière-plan' n'est plus souligné, seulement le lien nav de la propagation que vous êtes, et ainsi de suite.

Toute aide serait très appréciée !! Im un débutant avec Jquery, et la plupart de mon code est open source pris de divers endroits ainsi peut sembler décousu à vous! :-)

Merci beaucoup, Karl.

Répondre

1

nu code minimum (non optimisé, poli, loved, étant donné une éducation, ou autrement bien traité):

$('a.boldhim').click(function() 
{ 
    $('a.boldthislink').addClass('current'); 
}); 

$('a.unboldhim').click(function() 
{ 
    $('a.boldthislink').removeClass('current'); 
}); 

Assurez-vous que vous appelez à l'intérieur d'un document gestionnaire prêt, par exemple l'un de ces:

$(document).ready(function() { /* your code here */ }); 

ou ce (qui raccourci pour ce qui précède):

$(function() { /* your code here */ }); 
0
$(document).ready(function() { 
    $('.boldhim').click(function() { 
    $('.boldthislink').css('font-weight', 'bold'); 
    }); 
    $('.unboldhim').click(function() { 
    $('.boldthislink').css('font-weight', 'normal'); 
    }); 
}); 

Ou dans votre cas, vous pouvez le faire comme ça

$(document).ready(function() { 
    $('.next').click(function() { 
    $(a.current).removeClass('current').next().addClass('current'); 
    }); 
    $('.prev').click(function() { 
    $(a.current).removeClass('current').prev().addClass('current'); 
    }); 
}); 
+0

Salut à l'infini, cela m'a aussi aidé sur ma courbe d'apprentissage.Merci pour la réponse, toutes les réponses ici ont été grandes et im bien sur mon chemin pour réaliser ce dont j'ai besoin. Très impressionné par toutes les réponses sur ce site. La première fois que je l'ai utilisé, je vais essayer de contribuer quelque chose en retour. – Karlgoldstraw

0

$('.linkclass').click(function(){ 
    $('.current').removeClass('current'); 
    $(this).addClass('current'); 
}); 

Cela a l'avantage d'être évolutif - vous pouvez avoir autant ou aussi peu de liens que vous voulez et un seul sera « courant » à un moment donné.

Questions connexes