所以我坚持使用一个插件,它提供了一个简单的手风琴,但不提供自动折叠。我试图创建一个简单的脚本,但我没有成功。
让我提供一些DOM结构:
.mx-groupbox-collapsible.collapsed
.mx-groupbox-header
.content
.mx-groupbox-collapsible.collapsed
.mx-groupbox-header
.content
.mx-groupbox-collapsible.collapsed
.mx-groupbox-header
.content
假设结构不言自明,但有一点是:当。折叠
类被删除时,它会扩展项目(在我看来,这与构建手风琴的方式相反...)。
不知何故,触发jQuery脚本的唯一方法是针对标头($('. mx-groupbox-head'). Click()
)。它应该做的是找到每个没有的项目。折叠
类并添加它,同时将其从父类中删除。
我最好的猜测是这段jQuery。
// Target the inner accordion item header
$(".mx-groupbox-header").click(function() {
// Target each accordion item that doesn't have class 'collapsed',
// except the parent of the current clicked item
$('.mx-groupbox-collapsible').not([$('.collapsed'),$(this).parent()]).each(function(){
// Add 'collapsed' class, so current opened item, except current will collapse
$(this).addClass('collapsed');
});
});
谁能告诉我哪里出了问题,并为我提供解决方案?
是的,它比通常做的完全相反。。。
如果这真的是您要使用的标记(单击标头和其他东西),
您应该在标头单击-找到。最近()
(groupbox父),如:
// Cache dropdowns
var $collapsible = $('.mx-groupbox-collapsible');
// Target the inner accordion item header
$(".mx-groupbox-header").click(function() {
// Find header's collapsible parent
var $myCollapsible = $(this).closest('.mx-groupbox-collapsible');
// Target each accordion item that doesn't have class 'collapsed',
// except the parent of the current clicked item
$collapsible.not( $myCollapsible ).addClass("collapsed");
// Eventually (if needed?) do also:
$myCollapsible.removeClass("collapsed");
});
我尝试了以下代码,除了图标外,一切都很好。我试图在Google上找到一些解决方案,但我找不到我正在寻找的解决方案。 当我点击其中一个手风琴时,另一个手风琴应该折叠,当前点击的手风琴应该打开,同时fa图标应该根据手风琴的位置而改变。 这是我到目前为止已经尝试过的
手风琴效果其实就是通过JS改变元素的height,然后加上transition来让css动起来。 准备HTML结构 这里我们使用 dl , 因为 dt 刚好可以模拟标题, dd 模拟内容。 <div class="panel"> <dl> <dt>One Item</dt> <dd>One Item Content .</dd>
我正在使用href链接和可折叠标题制作手风琴菜单。问题是,当我单击子手风琴时,它会折叠父级。有什么解决方法吗? 这是更新的版本,它正在工作。解决方案是使用“”(如@Renan Arajo所述)并删除手风琴上的标题设置。 https://codepen.io/CocoSkin/pen/vRQyZP
我正在使用jQuery手风琴来隐藏一些数据。 accordion标题是一个带有一些标题的表格。有一个标题,我不希望你点击它,因为手风琴事件会触发。 所以 手风琴是可折叠的,如果您单击Test2(类nofunction),手风琴事件不应触发。但是如果您单击Test或其他表头,手风琴应该会触发事件。 我可以添加这个功能吗? 更新测试http://jsfiddle.net/e3Q8d/,包括jQuery
jQueryUI中的Accordion Widget是一个基于jQuery的可扩展和可折叠内容持有者,它被分成几个部分,可能看起来像标签。 jQueryUI提供了accordion()方法来实现这一点。 语法 (Syntax) accordion()方法可以使用两种形式 - $(selector,context).accordion(options)方法 $(selector, context).
描述 (Description) 手风琴是一个图形控制元素,显示为堆叠的项目列表。 每个手风琴都可以expanded或stretched以显示与手风琴相关的内容。 可折叠布局 当您使用单个单独的可折叠元素时,您需要省略accordion-list包装元素。 以下是可折叠布局的结构 - <!-- Single collapsible element ------> <div class = "acc