0

私は今のところ1つのアコーディオンを実行していますが、次にTitle2またはTitle1をクリックしたときに、Title3をクリックした場合は、このためのTitleリンクのみを指定したいので、サブリンクはありません。そのため、上記のTitleをスライドアップしたいと思います。

フィドル http://jsfiddle.net/cX68E/1/

4

3 に答える 3

1
$('#accordion> div').hide();
$('#accordion > h3').click(function() {
    if($(this).next('div').length) {
        $(this)
            .next('div')
            .slideToggle('fast')
            .siblings('div:visible')
            .slideUp('fast');
    } else {
         $(this)
            .siblings('div:visible')
            .slideUp('fast');
    }
});

デモ

于 2012-05-31T16:47:18.090 に答える
0

.next()をクリックすると戻り値が空になるため、コードが機能していませんでしたtitle3slideUpそれでは、then、then、endthenを試してみましょうslideToggle。下記参照、

$('#accordion> h3').click(function() {
  $(this)      
      .siblings('div:visible')
      .slideUp('fast')
      .end()
      .next('div')
      .slideToggle('fast');
});

デモ:http: //jsfiddle.net/cX68E/3/

于 2012-05-31T16:45:05.250 に答える
0

次のdivが見つかりません。そこには要素がないので、兄弟もありません。

したがって、上にスライドするものは何もありません。

最後にdivを追加するか、最初に上にスライドすることができます。

<h3>Title 3</h3>
    <div></div>

ここを参照してください:http://jsfiddle.net/a2qvU/

于 2012-05-31T16:47:20.980 に答える