2013-08-27 55 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事件處理程序打開子菜單項。

相關問題