0

我有一个简单的 jQuery UI 菜单,顶部有一个标题栏:

<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 项中的子菜单始终从其标题打开而不是向下打开?

菜单

4

2 回答 2

3

jQuery UI 菜单 API 支持一个position属性:http ://api.jqueryui.com/menu/#option-position 。尝试类似的东西$("#menu").menu({position: {my: 'left bottom', at: 'top right'}});

于 2013-12-17T16:47:58.430 回答
1

您可以使用 jQueryposition选项来设置子菜单的位置。

参考:

标识子菜单相对于相关父菜单项的位置。of 选项默认为父菜单项,但您可以指定另一个要定位的元素。您可以参考 jQuery UI Position 实用程序以获取有关各种选项的更多详细信息。

jQuery UI 位置:http ://api.jqueryui.com/position/

代码:

$("#menu").menu({
    position: {
        my: 'left bottom',
        at: 'right bottom'
    }
});

演示:http: //jsfiddle.net/89Wpf/

于 2013-12-18T08:16:11.437 回答