2012-02-20 15 views
7

tengo una lista desordenada con cinco elementos de la lista, cada uno con un enlace dentro de ella:jQuery: seleccionar todos los enlaces distintos a éste

 
<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> 

usando jQuery, cada vez que haga clic en cualquiera de estos enlaces, Quiero seleccionar todos los otros y luego hacerles algo (aplicar una clase, etc.).

¿Cómo puedo hacer esto?

Respuesta

22

utilizar el método de not para eliminar un elemento de un objeto jQuery:

$(function(){ 

    $('ul li a').click(function(){ 
    $('ul li a').not(this).addClass('other'); 
    }); 

}); 
10

Dentro del clic de devolución de llamada:

var others = $(this).closest('ul').find('a').not(this); 
2

Se pueden seleccionar todos los enlaces, a continuación, utilizar .not(this) para lograr lo que quiero, así:

$("a").click(function(){ 
    $("a").not(this).css("color","red"); 
}); 
Cuestiones relacionadas