【发布时间】:2015-10-07 23:19:34
【问题描述】:
有一个需要手风琴的项目,并且需要“全部展开/全部折叠”控件。它有效,但有两个问题:
如果展开所有部分,然后单击单个部分标题将其关闭,则它不起作用。您必须再次单击它才能关闭它
尽管删除了 ui-accordion-header-active 类,但折叠部分时标题图标不会改变
是的,我已经阅读了另一个答案here。我不想自己动手,因为客户已经在其他地方使用 jquery ui 手风琴,我想保持一致。
这是一个小提琴:
https://jsfiddle.net/7k1stb6d/
这是我的 js:
$(".accordion").accordion({
collapsible: true,
active: false
});
$(document).on('click', '.toggle-help', function (event) {
$(this).toggleClass('show-all hide-all');
$(this).text(function (i, v) {
return v === 'Expand All Topics' ? 'Collapse All Topics' : 'Expand All Topics';
})
});
$(document).on('click', '.show-all', function (event) {
$('.accordion .ui-accordion-content').css("display", "block").attr('aria-expanded', 'true').attr('aria-hidden', 'false');
$('.accordion .ui-accordion-header').removeClass('.ui-accordion-header-active');
});
$(document).on('click', '.hide-all', function (event) {
$('.accordion .ui-accordion-content').css("display", "none").attr('aria-expanded', 'false').attr('aria-hidden', 'true');
$('.accordion .ui-accordion-header').addClass('.ui-accordion-header-active');
});
非常感谢任何帮助。
【问题讨论】:
标签: jquery jquery-ui jquery-ui-accordion