У меня есть простое меню пользовательского интерфейса jQuery со строкой заголовка сверху:
<div style="width: 100%; min-height: 100px;"></div>
<ul id="menu" style="width: 100px;">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 3</a>
<ul>
<li><a href="#">Item 3-1</a></li>
<li><a href="#">Item 3-2</a></li>
<li><a href="#">Item 3-3</a></li>
<li><a href="#">Item 3-4</a></li>
<li><a href="#">Item 3-5</a></li>
</ul>
</li>
<li><a href="#">Item 4</a></li>
<li><a href="#">Item 5</a></li>
</ul>
<script type="text/javascript">
$(document).ready(function(){
$("#menu").menu();
});
</script>
Сценарий здесь: http://jsfiddle.net/uW44Y/
Есть ли способ, которым я могу заставить подменю из пункта 3 всегда открывать его, а не вниз?
API API jQuery API поддерживает атрибут position
: http://api.jqueryui.com/menu/#option-position. Попробуйте что-нибудь вроде $("#menu").menu({position: {my: 'left bottom', at: 'top right'}});
Вы можете использовать опцию position
jQuery для настройки положения подменю.
Ref:
Определяет положение подменю в отношении связанного с ним родительского пункта меню. Параметр по умолчанию соответствует родительскому элементу меню, но вы можете указать другой элемент для позиции. Вы можете обратиться к утилите jQuery UI Position для получения более подробной информации о различных параметрах.
Позиция jQuery UI: http://api.jqueryui.com/position/
Код:
$("#menu").menu({
position: {
my: 'left bottom',
at: 'right bottom'
}
});