2011-03-03 163 views
1

我在jQuery中做了一個簡單的下拉菜單。它工作正常。我有一個問題,但。如果父母處於活動狀態,jQuery下拉菜單應該展開

問題是,我需要保持活動頁面下拉展開在下面的例子中,具有.inpath父項的子菜單需要始終保持展開狀態。如果你將鼠標懸停在另一個菜單項上,它應該顯示相關的子頁面,並且當你將鼠標懸停在返回位置時顯示活動的子頁面。任何幫助非常appriciated :-)!

我的HTML:

<div id="menu"> 

      <ul> 

       <li><a href="">Hvem</a></li> 
       <li><a href="">Hvad</a> 
        <ul> 
        <li><a href="">Produkter</a></li> 
        <li><a href="">Leveringer</a></li> 
        </ul> 
       </li> 

       <li class="inpath"><a href="">Hvordan</a> 

        <ul> 

         <li><a href="">Reklame</a></li> 
         <li><a href="">PR</a></li> 
         <li><a href="">Websites</a></li> 
         <li><a href="">Illustrationer</a></li> 

        </ul> 

       </li> 
       <li class="last-item"><a href="">Sådan!</a></li> 

      </ul> 

      <div class="clear"><!--clearfix--></div> 

     </div> 

我的jQuery:

<script type="text/javascript"> 
     //mouseenter, mouseover, hover 
     // mouseleave, mouseout, 
    $(document).ready(function() { 
     $('#menu ul li ul').hide(); 
     $('#menu li').hover(
      function() { 
       //show its submenu 
       $('ul', this).slideDown(100); 

      }, 
      function() { 
       //hide its submenu 
       $('ul', this).slideUp(100);   
      } 
     ); 

    }); 

     </script> 
+0

也許有點題外話,但你知道你可以使用「溢出:汽車」菜單中的DIV的風格,擺脫清DIV的,對不對? – FarligOpptreden 2011-03-03 13:26:19

+0

我不知道!謝謝! – Hemil 2011-03-03 13:33:56

+0

@hunter我已經做了很多次,它對我有用嗎?閱讀這篇文章:http://joelpittet.com/log/2009/03/replacing-clearfix-with-overflowautohidden/ – FarligOpptreden 2011-03-03 17:05:28

回答

1

嘗試從原來的hide()hover()去除.inpath。您還需要使用>(直接後代選擇器)進行更具體的選擇。

$(document).ready(function() { 
    $('#menu > ul > li:not(.inpath) ul').hide(); 
    $('#menu > ul > li:not(.inpath)').hover(

    function() { 
     $('ul', this).slideDown(100); 
     $('#menu li.inpath ul').hide(); 
    }, function() { 
     $('ul', this).slideUp(100); 
     $('#menu li.inpath ul').show(); 
    }); 
}); 

http://jsfiddle.net/MGkQC/7/

+0

感謝您的回答:-)但是 - 當我將鼠標懸停在其他菜單項之一時,它應該隱藏活動的子菜單 - 是否可行? – Hemil 2011-03-03 13:32:01

+1

所以我們說感謝與投票;) – hunter 2011-03-03 13:46:13

+0

看到我更新的鏈接 – hunter 2011-03-03 13:46:40

相關問題