2011-08-18 4 views
-3

J'ai une liste ul avec un lien dans chaque li. Ma question est: comment puis-je supprimer la classe 'sélectionnée' d'un a (ancre) et l'appliquer à celui que je survole?Comment ajouter et supprimer des classes avec jQuery?

<ul> 
    <li><a href="" class="selected">Link 1</a></li> 
    <li><a href="">Link 2</a></li> 
    <li><a href="">Link 3</a></li> 
    <li><a href="">Link 4</a></li> 
    <li><a href="">Link 5</a></li> 
</ul> 
+1

avez-vous déjà vérifier addClass et removeClass dans jquery doc? –

Répondre

0

Commander le jquery api: http://api.jquery.com/

jQuery.addClass jQuery.removeClass

$("li").hover(
    function() { 
    $(this).addClass('selected'); 
    }, 
    function() { 
    $(this).removeClass('selected'); 
    } 
); 
0

Essayez ceci:

$("ul li a").hover(function(e){ 
    $("ul li a").removeClass("selected");  
    $(this).addClass("selected"); 
    e.preventDefault(); 
}); 

Vous retirez de toutes les balises sur a survolez-le puis ajoutez-le à celui sur lequel se trouve la souris.

0

vous devez écrire un sélecteur pour trouver le noeud à droite, puis utilisez la méthode addClass et removeClass

dans ce cas

$(".selected").removeClass("selected").addClass("unselected"); 

note comment j'enchaînée les deux ensemble ..

0
$('li').mouseover(function(){ 
    $(this).addClass('selected'); 
    console.log("adding class"); 
} 
).mouseout(function(){ 
    $(this).removeClass('selected'); 
    console.log("removing class"); 
}); 

échantillon de travail: http://jsfiddle.net/MdNXZ/

0

Avec le code HTML suivant:

<ul> 
    <li><a href="">Link 1</a></li> 
    <li><a href="">Link 2</a></li> 
    <li><a href="">Link 3</a></li> 
    <li><a href="">Link 4</a></li> 
    <li><a href="">Link 5</a></li> 
</ul> 

La ligne de script JQuery pour ce que vous demandez serait:

$('li').hover($(this).children('a').toggleClass('selected')); 

Voilà. Un seul paquebot.

Docs pour les fonctions:

http://api.jquery.com/hover/

http://api.jquery.com/toggleClass/

http://api.jquery.com/children/


+0

ce n'est pas ce que vous voulez. basculer sur le vol stationnaire ne donnera pas l'effet désiré, il cherche – cpjolicoeur

Questions connexes