2012-03-12 38 views
0

我已經建立了一個簡單的下拉列表,我填充各種鏈接。它包含大約50個項目,所以我將它包裝在一個div中以使其可滾動。問題是,當我彈出鼠標時,除非顯示前兩個列表元素,否則我會丟失整個列表。我已經將此下拉菜單構建爲一個子菜單,前兩個鏈接作爲各種「容器」。失去鼠標下拉列表信息

我有點理解爲什麼我失去了整個列表,但無法弄清楚如何使頂部鏈接在鼠標懸停時重新生成。

$('.myMenu > li').bind('mouseover', openSubMenu); 
function openSubMenu() { 
     $('.myMenu').css('overflow','auto'); 
     $('.myMenu').css('height','400px'); 
     $('.ulMenu').css('visibility', 'visible'); 
}; 
$('.myMenu > li').bind('mouseout', closeSubMenu); 
function closeSubMenu() { 
     $('.myMenu').css('overflow','hidden'); 
     $('.myMenu').css('height','20px'); 
     $('.ulMenu').css('visibility', 'hidden'); 
    } 
} 
</script> 




<div id="menu"> 
    <ul class="myMenu"> 
    <li id="li_left"><a href="#"> Application </a></li> 
     <li id="li"> <a href="#"> Hover For Listing</a> 
      <ul id="tasksUl" class="ulMenu"> 
      </ul> 
     </li> 
    </ul> 
</div> 
+0

你可以敲我們一個例子jsfiddle?代碼看起來有點奇怪從一個快速sacn。 – 2012-03-12 19:37:35

+0

我正在嘗試,因爲我們說......我應該提到,這是從一個SharePoint站點的內容編輯器webpart ... – mrwienerdog 2012-03-12 19:44:01

回答

1

我想你還必須發佈你的.css的列表。我覺得你有一個菜單,你想打開徘徊<li id="li"> <a href="#"> Hover For Listing</a>

列表要設置一個

$('.myMenu').css('height','20px'); 

,我不知道爲什麼要這麼做。你的.css風格也很不贊成。

檢查小提琴這裏:http://jsfiddle.net/eR2y9/1/

就像一個魅力。您無需爲菜單添加高度,因爲它是根據內部條目數量進行動態調整的。此外,如果設置爲不顯示,則不會佔用任何空間。如果您還有其他問題,或者如果我誤解了您的問題,請隨時回覆我的帖子,我會爲您找到解決方案。