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 回答