2011-12-17 10 views
0

に応じたクラスを置き換えます私はクラス<em>を交換する必要のある折り畳み式の要素のセットがisCollapse</em>イベント<em>に応じて、右</em></em>と<em>が残っている場合はイベント

<div class="collapsible-set"> 
    <div class="collapsible"> 
     <h3> 
     <a class="left"> 
      <span class="left"></span> 
     </a> 
     </h3> 
    </div> 
    <div class="collapsible"> 
     <h3> 
     <a class="right"> 
      <span class="right"></span> 
     </a> 
     </h3> 
    </div> 
</div> 

を私はクラスをトグルする必要があります。私が思いついたものよりもこれを行うための方法がありますか?

if (collapse) { 
    $('.left').addClass('topLeft').removeClass('left'); 
    $('.right').addClass('topRight').removeClass('right'); 
    } else if (!collapse) { 
    $('.topLeft').addClass('left').removeClass('topLeft'); 
    $('.topRight').addClass('right').removeClass('topRight'); 
    } 

これはトリックを行う必要がありますので、多くのコードを記述せずにこれを行うにはeaiser方法...

$('.collapsible:eq(0)').find('a').toggleClass('topLeft').toggleClass('left'); 
$('.collapsible:eq(1)').find('a').toggleClass('topRight').toggleClass('right'); 

答えて

2

表情がなければならない

$(".collapsible").find(".topLeft, .left").toggleClass("topLeft", collapse).toggleClass("left", !collapse); 
$(".collapsible").find(".topRight, .right").toggleClass("topRight", collapse).toggleClass("right", !collapse); 
+1

eq(0)でなければならないはずですか? – frequent

+0

私はそれを更新しました – aWebDeveloper

+0

ところで、それを短縮することができます: '.toggleClass(" topLeft "、" left ");' –

関連する問題

 関連する問題