2017-01-31 6 views
2

これは言いたいことを言いたいのですが、これはおそらくすでに存在していますが、それを見つけるために必要な言語が不明です。toggleClassをクリックした要素にのみ適用する方法

私はリストによって出力されているアコーディオンを持っています。リスト項目をクリックするとアイコンがアニメーション化されるようにしようとしています。

$('[data-toggle=collapse]').on('click', function() { 
     $('[data-toggle=collapse]').not(this).removeClass('collapsed'); 
     $('.plus-minus-toggle').toggleClass('collapsed'); 
    }); 

私はこれを達成するために、私が行っていたグーグルから、試みたが、私は.plus-minus-toggleトグルcollapsed[data-toggle=collapse]すべてのdivで任意のリストの項目をクリックすると何が起こっていることです。私は[data-toggle=collapse]をクリックしてcollapsedをトグルするだけです。私は一度のインスタンスのためにこれをどのように単一にするかわかりません。

更新

私は、関連のコードの同様の部分を持って、それは私のOPにして、それらを結ぶことは可能ですか?それとも別々のままにしておくべきですか?

$(document).on('click', '[data-toggle=collapse] .fa', function(e) { 
     e.stopPropagation(); 
    }); 

更新#2

<div class="tab-pane active" id="tab2"> 
    <div class="panel-group" id="help-accordion-2"> 
    <div class="panel panel-default panel-help"> 
     <a href="#post-surgery-add-case-add-cases-work" data-toggle="collapse"> 
     <div class="panel-heading"> 
      <h2>What is an add-on case? How to add-on cases work?</h2> 
      <div class="plus-minus-toggle collapsed"></div> 
     </div> 
     </a> 

     <div id="post-surgery-add-case-add-cases-work" class="collapse"> 
     <div class="panel-body"> 
      <p>Lorem Ipsum</p> 
     </div> 
     </div> 
    </div> 
    </div> 
</div> 

ここで使用されているHTMLのサンプルです。

アップデート#3

$('[data-toggle=collapse]').on('click', function() { 
    $('[data-toggle=collapse]').not(this).removeClass('collapsed'); 
    $(this).find('.plus-minus-toggle').toggleClass('collapsed'); 
}); 

このコードは、私が欲しかったものを達成しました。このよう

答えて

1

$('[data-toggle=collapse]').on('click', function() { 
    $('[data-toggle=collapse]').not(this).removeClass('collapsed'); 
    $(this).toggleClass('collapsed'); 
}); 

は、この情報がお役に立てば幸いです。

+0

'これは、'折りたたんでいる 'divを知っていますか? '[data-toggle = collapse]'は、そのクラスをトグルする必要はありません。おそらく2行目に '.plus-minus-toggle'が必要でしょうか? –

+0

使用しているHTMLはありますか? 'this'は、data-toggle = collapseを持つクリックされたアイテムを切り替えます。 「plus-minus-toggle」要素は、クリックされる項目の子要素ですか? – carlosp120

+0

私は自分のOP –

0
$('[data-toggle=collapse]').on('click', function(e) { 
     $('[data-toggle=collapse]').not(this).removeClass('collapsed'); 
     $('.plus-minus-toggle').toggleClass('collapsed'); 
     e.stopPropogation(); 
}); 
関連する問題