由于一个活跃的,我的toggle divs崩溃了

时间:2014-05-27 13:45:07

标签: javascript jquery html css

我有这个简单的切换div:

FIDDLE

$(this).next().slideToggle( "slow", function() {});

非常简单......但问题是我在页面加载时打开了第一个:

$('.container h3:first-child').trigger('click');

但是当我崩溃时我的问题就在于我想要它打开或关闭,但是它与第一个混淆了......显然我的第一个触发器正在影响......即使我打开第二个并且有时会崩溃第三个也打破了......

....我如何让两个功能一起工作?

1 个答案:

答案 0 :(得分:0)

使用额外的if语句,您应该能够实现这一诀窍:

$(document).ready(function () {
    $(".container h3").click(function () {
        $(this).toggleClass('active');
        $(this).next().slideToggle("slow", function () {});
        $("#collapse").removeClass("collapsed");
    });
    $('.container h3:first-child').trigger('click');

    $("#collapse").click(function () {
        if ($(this).hasClass("collapsed")) {
            $(".container h3").addClass("active").next().slideDown("fast");
        } else {
            $(".container h3").removeClass("active").next().slideUp("fast");

        }
        $(this).toggleClass("collapsed");
    });
});

FIDDLE

编辑:使用额外的if语句更新了答案。我相信这会做你想要实现的目标。如果没有,请合作。