2015-09-23 10 views
5

要素の親とその兄弟を選択したいと思います。ただし、.parent().siblings()を選択すると元のelmentの親は含まれません。親とそのすべての兄弟を選択

$(this).parent().siblings().removeClass("active"); 

どのようにして親の兄弟と親自体も選択できますか?

+0

あなたは、両方の親からクラスを削除すると、それは兄弟ですか? – Tushar

答えて

7

使用jQueryのaddBack()方法:あなたがクラスを削除することができるように

$(this).parent().siblings().addBack().removeClass("active"); 

これは、要素の兄弟を選択し、自分自身。

jQueryのバージョンが1.8未満の場合は、代わりにandSelf()を使用してください。

更新:このメソッドが行うことを正確に示すために、以下の例を追加しました。

$('.active a').click(function(){ 
 
    $(this).parent().siblings().addBack().removeClass("active"); 
 
});
.active {background: yellow}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="active">I'm active. <a href="#">Remove all active</a></div> 
 
<div class="active">I'm active. <a href="#">Remove all active</a></div> 
 
<div class="active">I'm active. <a href="#">Remove all active</a></div> 
 
<div class="active">I'm active. <a href="#">Remove all active</a></div> 
 
<div class="active">I'm active. <a href="#">Remove all active</a></div>

+0

'andSelf'は推奨されていません。 – Barmar

+0

これは、親の兄弟と元の要素を選択しませんか?私が望むのは、親の兄弟と元の要素の親を選択することです。 – ink

+0

元のアイテムの親とその兄弟を選択しました。私は答えに例を追加しました。 –

関連する問題