1

初めてロードするとき、最初のdivをアクティブにしようとしていますが、最初を除くすべてのdivがアクティブになります。ここではjsfiddleにあります。

$(".accordion > span").click(function(){
  $('.accordion > span').removeClass('active');

  $(this).addClass('active');
    if(false == $(this).next().is(':visible')) {
        $('.accordion > div').slideUp(300);
    }
    $(this).next().slideToggle(300);
});

var animationIsOff = $.fx.off;
$.fx.off = true;
$('.accordion > span:eq(0)').click()
$.fx.off = animationIsOff;

ここにHTMLがあります

<div class="accordion">
    <span>Accor 1</span>
    <div>
Content here
    </div>
</div>

<div class="accordion">
    <span>Accor 2</span>
    <div>
Content here
    </div>
</div>

<div class="accordion">
    <span>Accor 2</span>
    <div>
Content here
    </div>
</div>

どんな助けでも大歓迎です。

4

1 に答える 1

1

あなたはとても近くにいます。

active最初のスパンにクラスを追加するだけです。

$('.accordion > span:eq(0)').addClass('active');

http://jsfiddle.net/ym2E3/2/

また

あなたはhide他のことができdivます。

$('.accordion > span:not(:eq(0))').next('div').css('display','none');

http://jsfiddle.net/ym2E3/9/

于 2013-08-24T03:54:29.070 に答える