Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery: select all links other than this one

I have an unordered list with five list items, each with a link inside of it:

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

Using jQuery, whenever I click on any one of these links, I want to select all of the other ones and then do something to them (apply a class, etc.).

How do I do this?

like image 368
daGUY Avatar asked Feb 20 '12 19:02

daGUY


2 Answers

Use the not method to remove an element from a jQuery object:

$(function(){

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

});
like image 132
Guffa Avatar answered Oct 19 '22 02:10

Guffa


Inside the click callback:

var others = $(this).closest('ul').find('a').not(this);
like image 31
James McLaughlin Avatar answered Oct 19 '22 02:10

James McLaughlin