【发布时间】:2012-08-11 19:44:54
【问题描述】:
我有一个简单的手风琴式菜单,它在 jQuery 的帮助下打开/关闭其子项:jsFiddle。
如果我单击菜单项,一切正常 - 显示所选项目的子项,而所有其他不必要的子项隐藏。但是,我希望能够根据传递的某些变量打开菜单树 (id)。
所以,在这个 jsFiddle 中,我创建了手动链接(在右侧),它应该在菜单中显示相应的项目(展开所有父项)并隐藏所有其他项。当我点击手动链接时,我设法只切换了一级子级,但是当我点击让我们说 4 级链接(在我的示例中为 11 类)时,什么也没有发生。我想要做的是展开所选项目的所有父母并折叠所有其他不在所选孩子的树路径中。
感谢您的帮助。
【问题讨论】:
-
这个jsFiddle 是否按预期执行?
-
嗯,大多数情况下是的,这肯定是正确的方法 :) 我看到当点击
toggle cat 11时,所有的父母都会正确展开,尽管有些孩子有时不会崩溃,例如尝试点击toggle cat 1,然后点击toggle cat 11。cat 1应该崩溃。单击toggle cat 5、toggle cat 6和toggle cat 11时也是如此。在那种情况下cat 6应该崩溃。非常感谢您的努力,这非常接近!我会尝试看看这里发生了什么,看看我是否能够进一步调整它:) -
this version 怎么样?
-
Much better :) I was trying to work on your previous version and implement it and have noticed that when
cat 1is selected, parent element, which is in my case bunch of text, is replaced with+符号。我将尝试实现最后一个版本,但似乎这非常接近:) 再次感谢您! -
你能租下这个作为答案让我接受吗?基本上你确实发布了一个正确的解决方案,我设法处理了我的其他“问题”:) 谢谢!
标签: javascript jquery menu accordion