2013-08-27 65 views
1

我试图从使用mmenu jquery插件的父链接打开一个子菜单,并且几乎得到它,但是一旦打开子菜单,该功能也关闭菜单(打开主菜单左边)。Jquery Mmenu:打开一个子菜单

我得到这个:

<nav data-role="navbar" data-iconpos="left" id="leftMenu"> 
    <ul> 
     <li><a id="a_home" href="/" >Home</a></li> 
     <li><a id="a_what" href="/" >What to do</a></li> 
     <li> 
      <a id="a_guides" href="#guidesSubmenu" onclick="$('#leftMenu ul#guidesSubmenu').trigger('open.mm');" >Guides</a> 
      <ul id="guidesSubmenu"> 
       <li><a href="/">Beer Guide 2013</a></li> 
       <li><a href="/">Bar Guide 2013</a></li> 
       <li><a href="/">Cheap Eats 2013</a></li> 
      </ul> 
     </li> 
     <li> 
      <a id="a_sections" href="#" >Sections</a> 
     </li> 
    </ul> 
</nav> 

所以,当我点击指南链接,打开子菜单,而且还关闭主菜单,动画的权利。 任何人都知道如何正确打开子菜单?

这是插件页面:http://mmenu.frebsite.nl/ 是不是一个简单的jQuery的JavaScript。

谢谢。

+0

下面是一个纯粹的CSS解决方案:http://jsfiddle.net/ninty9notout/mTMh2/ – ninty9notout

+0

这不适合我,谢谢。 – msassa

+0

小提琴没有为你工作?或者你有没有试图在你的网站上,它没有工作? – ninty9notout

回答

0
$('li').hover(function(){ 

    $('ul',this).slideDown(); 

},function(){ 

    $('ul',this).slideUp(); 

}); 

只需改变你自己的锂标签类名称的选择器。我想你也可以切换方法。

$('#li').toggle(function() { 
    $('ul',this).slideDown(); 
}, function() { 
    $('ul',this).slideUp(); 
}); 
+0

对不起,我正在使用mmenu插件。所以,这是不对的。谢谢。 – msassa

3

jquery.mmenu插件会为每个带UL的LI自动添加一个“打开子菜单”按钮。如果A不链接到实际工作页面,所有你需要做的,是带有SPAN替换为:

<ul> 
    <li><span>Guides</span> 
     <ul> 
      <li><a href="/">Beer Guide 2013</a></li> 
     </ul> 
    </li> 
</ul> 
+0

这不起作用。这样做mmenu追加一个链接到右侧,用一个> simbol,但引导词不打开子菜单。 – msassa

+0

如果您坚持如示例中所示的标记,那应该有效。 查看网站上的示例:单击右侧的“联系人”图标。 – Fred

+0

是的,我明白了。但对我而言,这并不适用。但我确实以其他方式修复了它。那谢谢啦。 – msassa

0

今天我们就遇到了这个完全相同的情况,经过研究一个良好的金额使用以下解决方案(适应您的情况)。看起来他们已经改变了一些东西,所以元素上的数据属性并没有明确的支持,所以我们将初始化转移到JavaScript。

HTML(没有变化):

<nav data-role="navbar" data-iconpos="left" id="leftMenu"> 
    <ul> 
     <li><a id="a_home" href="/" >Home</a></li> 
     <li><a id="a_what" href="/" >What to do</a></li> 
     <li> 
      <a id="a_guides" href="#guidesSubmenu" onclick="$('#leftMenu ul#guidesSubmenu').trigger('open.mm');" >Guides</a> 
      <ul id="guidesSubmenu"> 
       <li><a href="/">Beer Guide 2013</a></li> 
       <li><a href="/">Bar Guide 2013</a></li> 
       <li><a href="/">Cheap Eats 2013</a></li> 
      </ul> 
     </li> 
     <li> 
      <a id="a_sections" href="#" >Sections</a> 
     </li> 
    </ul> 
</nav> 

的JavaScript:

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#leftMenu").mmenu({ 
     onClick: { 
      close: false 
     } 
    }); 
}); 
</script> 

指定为假关闭选项使它所以当你点击李它不会关闭mmenu,和允许onclick事件处理程序打开子菜单项。

相关问题