2016-06-29 5 views
0

私はプログラミングに慣れていません。以前はここに投稿したことはありませんでしたが、この問題はかなり単純ですが、それは私のための基礎を超えています。私は5つのオブジェクトをすべて同じdivクラスで持っています。私はクラスなどを隠して実験しましたが、私の目標は、イベントハンドラとjqueryセレクタを使用して1つのオブジェクトを選択し、残りのオブジェクトを隠すか、または切り離すことです。私のコードはおそらくかなり醜いですが、私は答えに向かって取り組んでいます。しかし、隠されていないオブジェクトが再びクリックされると、他のオブジェクトが再び現れたがっています。Jquery 1つのオブジェクトを選択して同じタイプの他のオブジェクトを非表示にする

+1

クリックハンドラをお持ちの場合は、クラスを一致させてすべてを非表示にしてから「this」を表示します。 – JonSG

答えて

1

チェックこのアウト:

  • .not(this)は、選択した1
  • .toggle()が見えるまで隠されてから要素のステータスを変更し続けるから除いて一般的なクラスの他のすべての要素を選択し、バック永遠に...

$('.aa').click(function(){ 
 
    $('.aa').not(this).toggle(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="aa">1</div> 
 
<div class="aa">2</div> 
 
<div class="aa">3</div> 
 
<div class="aa">4</div> 
 
<div class="aa">5</div>

+0

もう1つの隠し要素がある場合 - それは表示されます.. – ezhikov

+0

仮に隠れ要素があり、同じクラスを持ち、それを常に隠しておきたいのであれば、id (隠された

+0

すべてを非表示にすることができますあなたのセレクターによって、次に$(this) – ezhikov

関連する問題