javascript - Accordion 打开但无法关闭

标签 javascript jquery zurb-foundation

我正在使用 Foundation Accordion,并添加了一个脚本以实现平滑的打开和关闭。它可以工作,但问题是如果您只有一个面板,您可以打开它但不能关闭它。

这里是使用的代码:

$(".accordion").on("click", "dd:not(.active)", function (event) {
    $("dd.active").removeClass('active').find(".content").slideUp("slow");
    $(this).addClass('active').find(".content").slideToggle("slow");
}); 

我尝试了这段代码,但它不起作用:

$("dd.active").on("click", function (event) {
    $("dd.active").removeClass('active').find(".content").slideUp("slow");
});

如何让它顺利关闭?

这是一个jsFiddle

注意:打开面板然后尝试将其关闭。

最佳答案

删除href来自<dd><a> .

JS:

$(function () {
    $(".accordion").on("click", "dd", function (event) {
        if (!($(this).hasClass("active"))) {
            $("dd.active").removeClass('active').find(".content").slideUp("fast");            
        }
        $(this).toggleClass('active').find(".content").slideToggle("fast");
    })
});

Updated fiddle here.

关于javascript - Accordion 打开但无法关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20779625/

相关文章:

javascript - 数字运算

javascript - onsubmit javascript 和表单

javascript - Chai/诗农 : How to spy on the return value of a promise returned by a function?

php - jquery $.post 从 php 返回的数据为空

jquery - jqgrid addrowdata问题

javascript - 修复 Selected startDate 应该是下一个 end Date

node.js - 在多台机器上使用 Foundation-CLI/Gulp

javascript - 如何使 javascript 窗口位于所有其他窗口之上?

javascript - 查看是否有任何转换正在进行

javascript - Zurb Foundation javascript reInit 模块不工作