2012-02-20 45 views
7

我有五個列表項,每一個環節的它內部的無序列表:jQuery的:選擇比這以外的所有環節一個

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

使用jQuery,每當我點擊這些鏈接中的任何一個,我想選擇所有的其他,然後對他們做些什麼(申請一個班級等)。

我該怎麼做?

回答

22

使用not方法從一個jQuery對象中刪除一個元素:

$(function(){ 

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

}); 
10

裏面的點擊回調:

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

您可以選擇所有的鏈接,然後使用.not(this)來完成你想這樣:

$("a").click(function(){ 
    $("a").not(this).css("color","red"); 
}); 
相關問題