2012-01-27 2 views
1

私はこのような李リストがある場合:私は、最初のクラスは他の人に追加されず、たとえば、li要素にクラスを追加するためにjqueryの内のコードを記述しますどのようにli要素のリストからクラスを追加および削除する方法は?

<ul> 
<li>first </li> 
<li>second</li> 
<li>third</li> 
<li>fourth</li> 
</ul> 

を?

私はこれを試しましたが、もちろんすべてのli要素に追加されます。

$(document).ready(function() { 
$("ul li").click(function() { 
if(!$("ul li").hasClass('active')) 
{ 
$("ul li").addClass('active'); 
} 
}); 

}); 

私は他のすべてが彼らにアクティブ追加している人が存在する]をクリックして削除しただけli要素にアクティブなクラスを追加できるようにしたいです。どうすればいい?おかげ

答えて

5

片道

$("ul li").click(function() { 
    var $this = $(this); // reference to the clicked li 
    if(!$this.hasClass('active')) 
    { 
    $this.addClass('active'); 
    $('ul li').not($this).removeClass('active'); 
    } 
}); 

ライブ例:http://jsfiddle.net/Xb9yx/

別の方法

$("ul li").click(function() { 
    var $this = $(this); // reference to the clicked li 
    if(!$this.hasClass('active')) 
    { 
    $this.addClass('active').siblings().removeClass('active'); 
    } 
}); 

ライブ例:http://jsfiddle.net/d5Sde/

おそらく百がありますそれらのもののこの1 1同じを達成する方法もの。

関連する問題