javascript - 无法隐藏所有div内容

标签 javascript jquery

我正在制作可折叠/可展开的div,类似于 Accordion ,如果我单击特定标题,则会出现与标题相关的内容。如果我单击不同的标题,则先前打开的内容将在显示最近单击的标题的当前内容之前关闭,因此一次仅打开一个内容部分。我已经解决了。

<div class="container">
    <div class="title">ONE</div>
    <div class="content">Content One</div>
</div>
<div class="container">
    <div class="title">TWO</div>
    <div class="content">Content Two</div>
</div>
<div class="container">
    <div class="title">THREE</div>
    <div class="content">Content Three</div>
</div>
<div class="container">
    <div class="title">FOUR</div>
    <div class="content">Content Four</div>
</div>

但是,我正在尝试使所有 div 都可以折叠并隐藏所有内容。我真的很难弄清楚那部分。这是我到目前为止所拥有的:

$(".title").click(function () {
    $content = $(this).next();
    if (!($content.is(":visible"))) {
        $(".content").slideUp("fast");
        $content.slideToggle(200);
    }
});

演示:http://jsfiddle.net/2skczuze/

我对 Javascript 还很陌生,所以我不知道如何在不打开另一个 div 的情况下使展开的 div 折叠起来。

最佳答案

第1步:折叠除当前内容div之外的所有内容div。

第二步:切换当前内容 div 的可见性。

$(".title").click(function () {
   $(".content").not($(this).next()).slideUp();
    $(this).next().slideToggle();
});

Fiddle

关于javascript - 无法隐藏所有div内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31070180/

相关文章:

javascript - 下拉菜单中的 jQuery 更改事件

javascript - 如何使用 javascript 设置边框样式?

javascript - 从模块返回数据以在 react 页面中呈现

javascript - 动态创建的按钮 onClick 不起作用

javascript - 如何将 `scroll` 条添加到 `div` ,当它的高度为 `auto`

javascript - 来自 safari/webkit 中 ajax 调用的 json 对象的奇怪行为

javascript - User.findOne 充当 SailsJs 中的 User.Update

javascript - 检查单选按钮的状态 (javascript/canvas)

没有事件项目的 jQuery Accordion 折叠

javascript - 新增 Div 不工作点击功能