-1
我有一些內容顯示爲div內的列表。默認情況下,DIV是隱藏的,但一旦它的父有類」。開‘變爲可見:jScrollPane零下拉菜單上的高度
<li class="dropdown">
<a>Options</a>
<div class="dropdown-menu">
<div class="menu-scroll">
<ul>
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
</div>
</div>
</li>
當我點擊列表項目中的錨發生的是,該列表項接收’。開「類,它可以顯示」.dropdown-menu「。現在我的問題是,我想讓菜單的最大高度爲200px,之後它應該初始化滾動。考慮到每一個它的列表項是50像素高,我們有這些scennarios:
- 2列表項的100px的高度,沒有滾動
- 3列表項中,爲150px高度,沒有滾動
- 4列表項中,200像素高,沒有滾動
- 5+列表項,超過200像素,並滾動
這意味着我不能爲。菜單滾動一個固定的高度,因爲我想要的高度它要擴展到達到那個高度。我做的是設置:
max-height: 200px;
height: auto;
它完美的作品我第一次觸發的下拉菜單但後來它使一切都錯了,是這樣的:
我已經試過:
- 當單擊切換.open類的錨時初始化jScrollpane。
- 在文檔準備好時初始化jScrollpane,並在單擊同一個錨點時僅重新初始化對象。
結果每次都是一樣的,如上圖所示。我搜索了文檔,常見問題,StackOverflow,谷歌組,但無濟於事。有沒有人對此有任何線索?
編輯:這是代碼,我用它來觸發下拉列表並初始化滾動:
$('.dropdown-toggle').on("click", function() {
$(this).parent('.dropdown').toggleClass('open').find('.dropdown-menu').jScrollPane();
});
什麼。開類做的就是添加
.dropdown.open .dropdown-menu {
display: block;
}
到否則隱藏。下拉菜單:
.dropdown.dropdown-menu {
display: none;
}