用于展开和折叠所有jQuery手风琴的按钮

时间:2014-12-09 16:15:57

标签: javascript jquery accordion jquery-ui-accordion

我有一个简单的jQuery手风琴,它需要顶部的按钮才能“展开/全部折叠”。

到目前为止我已经开始工作了,除非有些项目已经显示,点击按钮,“其他”项目展开/折叠 - 让已经打开的项目反其道而行。

我需要找到一些基本上会关闭并重新打开所有项目的重置,反之亦然。

请参阅以下有关手风琴和折叠的代码:

<script type="text/javascript">
(function($) {
    $(function() {
        $(".faq-accordion > div").accordion({ header: "h4", collapsible: true, active: false, speed: 10000, });
    })
})(jQuery);
</script>

<script>
$(document).ready(function() {
$('.show-all-applying').click(function() {
    $('.faq-accordion div div').slideToggle("fast");
});
});
</script>

谢谢!

编辑:Here is a JSFiddle显示目前为止的所有内容(内容已更改)

问题是我需要:

  1. 让“全部显示”按钮也会在第二次点击后隐藏所有内容。
  2. 点击关闭时的问题有时需要点击两次,不确定原因。

1 个答案:

答案 0 :(得分:0)

请勿使用slideToggle(),而是使用slideUp();)

SlideToggel将滑动上下的所有内容以及所有下行的内容。

您希望所有内容都向上滑动,因此请使用slideUp()

编辑:我修改了你的jsfiddle,让它运转起来。当用户点击按钮“显示全部”按钮时它会检查文本是什么。所以在这种情况下,显示所有&#39;它将全部slideDown。然后它会将文本更改为“隐藏所有内容”。如果用户点击“全部隐藏”,则会全部滑动。如果您在这种情况下使用slideToggle,如果用户点击问题标题,它也会起作用,然后打开然后点击该节目,它将关闭问题标题被点击并打开所有其他标题!

<强> WORKING FIDDLE