我正在使用JQueryUI Accordion创建一个包含以下代码的垂直多级菜单:
<ul class="accordion_menu">
<li>
<a href="#">Item 1</a>
</li>
<li>
<a href="#">Item 2</a>
<ul class="accordion_menu">
<li><a href="#">Item 2 - 1 </a></li>
<li><a href="#">Item 2 - 2</a>
<ul class="accordion_menu">
<li><a href="#">Item 2 - 2 - 1</a></li>
<li><a href="#">Item 2 - 2 - 2 </a></li>
</ul>
</li>
<li><a href="#">Item 2 - 3 </a></li>
<li><a href="#">Item 2 - 4</a></li>
</ul>
</li>
<li>
<a href="#">Item 3</a>
</li>
</ul>
<script type="text/javascript">
$(function() {
$(".accordion_menu").accordion({event: "mouseover", fillspace: true, collapsible: true});
});
</script>
并且,在此附加快照中,您可以看到元素重叠。
注意: 如果我删除“第1项”,那么一切都开始正常工作。 我迷失在这里。我是Jquery的新手。请指导我可能遗失的内容..
答案 0 :(得分:1)
很难搜索,因为我之前使用过此插件,尝试下次发布。
这是一个改进的解决方案:
脚本
$(function() {
$(".accordion_menu").accordion({event: "mouseover", fillspace: true, collapsible: true});
$('.accordion_submenu').hide();
$(".submenu").mouseover(function () {
$('.accordion_submenu').slideDown("fast");
}).mouseout(function(){
$('.accordion_submenu').slideUp("fast");
});
});
HTML
<ul class="accordion_menu">
<li>
<a href="#">Item 1</a>
</li>
<li>
<a href="#">Item 2</a>
<ul class="accordion_menu">
<li><a href="#">Item 2 - 1 </a></li>
<li><a href="#" class="submenu">Item 2 - 2</a></li>
<ul class="accordion_submenu">
<li><a href="#">Item 2 - 2 - 1</a></li>
<li><a href="#">Item 2 - 2 - 2 </a></li>
</ul>
<li><a href="#">Item 2 - 3 </a></li>
<li><a href="#">Item 2 - 4</a></li>
</ul>
</li>
<li>
<a href="#">Item 3</a>
</li>
</ul>
很脏,但是有效。