jQuery:toggle - >只打开一个并折叠其他兄弟项目

时间:2011-08-01 18:37:54

标签: javascript jquery

jsfiddle:http://jsfiddle.net/ZmDs2/1/ 嗨,我正在尝试完成折叠其他父项,同时只打开一个jQuery切换。

我试过

var index = $(this).index();
$('.togglebox').eq(index).slideToggle("fast").siblings('.togglebox').hide();

我希望你们能帮忙.. 感谢

3 个答案:

答案 0 :(得分:1)

我将javascript更改为this

$(document).ready(function(){
    //Hide the tooglebox when page load
    var current, toggleBoxes = $(".togglebox").hide();
    //slide up and down when click over heading 2
    $("h3").click(function(){
        current = $(this).next(".togglebox");
        toggleBoxes.not(current).slideUp('fast');
        current.slideDown("fast");
    });
});

我只需使用“togglebox”类保存所有元素,然后在执行slideToggle动画之前将其折叠。

答案 1 :(得分:1)

你没有在点击事件中调用hide函数:

http://jsfiddle.net/ZmDs2/3/

答案 2 :(得分:0)

试试这个

$(function(){
    $(".togglebox").hide();

    $("h3").click(function(){
        $(".togglebox").slideUp('fast');
        $(this).next(".togglebox").slideDown("fast");
    });
});