jQuery中的嵌套手风琴菜单
我有一个使用一组嵌套手风琴实现的菜单, 1
和2
,每个都有元素a
和b
。
我想实现以下逻辑:
-
当我点击
1a
,我将得到1a
和两个子菜单2a
,2b
-
当我点击
2a
,2b
我将分别得到每个数据。
问题
期望的结果:
- 我只想显示最后一次点击的
nth-most
个子元素,折叠所有其他元素。 - 初始化时,只能看到
1a
和1b
。
目前的结果:
- 点击
1b
,然后点击2b
,1b
仍然完全可见。
JavaScript代码
$(document).ready(function() { $("#acc1").accordion({ active:".ui-accordion-left", alwaysOpen: false, autoheight: false, header: 'a.acc1', clearStyle: true }); $("#acc2").accordion({ alwaysOpen: false, autoheight: false, header: 'a.acc2', clearStyle: true }); });
HTML:
只需对HTML中元素的顺序进行一些更改,您就可以获得所需的行为。 现在开始只有1a和1b打开。 类似地,当你点击1b时,它将关闭1a,这将隐藏任何打开的2a / 2b部分。
$(document).ready(function() { $("#acc1").accordion({ active:".ui-accordion-left", alwaysOpen: false, autoheight: false, header: 'a.acc1', clearStyle: true }); $("#acc2").accordion({ active:".ui-accordion-left", alwaysOpen: false, autoheight: false, header: 'a.acc2', clearStyle: true }); });