我可以通过点击其他元素来扩展/折叠JQuery ui Accordion的内容吗?
默认情况下,有控制展开/折叠的内容标题。但在我的情况下,我也可以通过其他元素展开/折叠内容。 例如:
jquery ui accodion代码的基本结构:
$(function() { $( "#accordion" ).accordion(); }); Section 1
Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer ut neque. Vivamus nisi metus, molestie vel, gravida in, condimentum sit amet, nunc. Nam a nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut odio. Curabitur malesuada. Vestibulum a velit eu ante scelerisque vulputate.
......
现在。 我有另外一个元素,就像:
非常感谢你!!
您可以使用传入 false的.activate以编程方式折叠所有元素。 由于您一次只打开一个元素,因此可以折叠打开显示该链接的任何元素。 这只有在您将collapsible
设置为true
时才有效。
您可以传入要扩展的其他元素以在单击时展开该元素。
折叠手风琴标签:
$('.accordion').accordion('activate', false );
展开第一个手风琴标签:
$('.accordion').each(function (idx, item) { if ($(item).accordion("option", "active") === false) { $(item).accordion('activate', 0); } });
更新JQuery UI后,手风琴上没有“主动”方法。 所以,要折叠所有手风琴使用:
$('.accordion').accordion('option', {active: false});
在最初加载后,我很难让Accordions崩溃/扩展。 为了解决这个问题,我使用了:
$('#accordionId h3').click();
…模仿单击标题区域并强制切换激活类。
感觉就像一个黑客,但它是有效的,最好的。
使用Bootstrap:
//To Expand var elem = $(this).find('.accordionElement'); elem.addClass("in"); elem.attr("style",""); elem.attr("aria-expanded",true);
然后你可以崩溃使用:
var elem = $(this).find('.accordionElement'); elem.removeClass("in"); elem.attr("style","height: 0px;"); elem.attr("aria-expanded",false);