如何为jQuery UI selectmenu按钮和selectmenu项独立设置宽度?

时间:2016-02-24 19:03:26

标签: jquery jquery-ui jquery-plugins

我的selectmenu按钮必须有固定的大小 - 这里没问题。

另外,当我点击此按钮并出现弹出项目时 - 我希望每个选项都显示在一行中,没有包装而没有显示水平滚动条。

我尝试了不同的方法,例如:

$select.selectmenu({
  icons: { button: 'downArrowGreen' }
});
$select.selectmenu('widget').css('width', instance.getRealWidth($select) - 8);
$select.selectmenu('menuWidget').css('width', '[something, to fit the most wide $select element').addClass('overflow');

这里出现两个问题:

1)由于某种原因,为'menuWidget'设置的大小(即菜单的弹出部分)被忽略(似乎它的设置与'widget'相同);

2)溢出类只是添加了一些装饰,但它不知道这个宽度应该是什么 - 所以应该计算宽度。但$ select是隐藏的,其选项不可能计算......

更新:我可以看到我可以用_resizeMenu做到这一点,但对我来说,它看起来更像是一个黑客。此外,计算$ select items width的问题仍然存在。

1 个答案:

答案 0 :(得分:0)

修改ui-selectmenu-open类,例如 .ui-selectmenu-open {width:20%;}

奇怪的是它的父元素是body元素。