使用jQuery插件selectmenu。 我已经初始化与选择
$('select').selectmenu({width:100, maxHeight:300, style: 'dropdown'});
我有很多选择,这会导致出现默认浏览器的滚动条,但我不能使用它。 如果我点击并尝试拖动该工具条,selectmenu关闭。 我可以用鼠标滚轮滚动。 有可能是在CSS和各种插件有些冲突。 但是我不知道从哪里开始寻找。
任何想法,什么可能导致这个问题?
使用jQuery插件selectmenu。 我已经初始化与选择
$('select').selectmenu({width:100, maxHeight:300, style: 'dropdown'});
我有很多选择,这会导致出现默认浏览器的滚动条,但我不能使用它。 如果我点击并尝试拖动该工具条,selectmenu关闭。 我可以用鼠标滚轮滚动。 有可能是在CSS和各种插件有些冲突。 但是我不知道从哪里开始寻找。
任何想法,什么可能导致这个问题?
这似乎是在js文件的这一部分的问题:
// document click closes menu
$( document ).bind( "mousedown.selectmenu-" + this.ids[ 0 ], function( event ) {
//check if open and if the clicket targes parent is the same
if ( self.isOpen && !$( event.target ).closest( "#" + self.ids[ 1 ] ).length ) {
self.close( event );
}
});
滚动条中同意,“如果”的条款,因此selectmenu的关闭状态下...
你可以发表评论里面的“如果”的条款,直到有人给出了这个bug的解决方案就行了。 这样,selectmenu不会当你点击了它关闭,但是当你选择任何选项,它将被关闭...
编辑:
好吧,它的工作现在。 更改此人之前显示的部分:
$( document ).bind( "mousedown.selectmenu-" + this.ids[ 0 ], function( event ) {
//check if open and if the clicket targes parent is the same
if ( self.isOpen && !$( event.target ).closest( "#" + self.ids[ 1 ] ).length && !$(event.target).hasClass('ui-selectmenu-menu-dropdown')) {
self.close( event );
}
});
通过这种方式,滚动栏与类的div部分“UI-selectmenu菜单,下拉” ...... selectmenu不会移动滚动条时关闭。
您可以设置最大高度为当它在CSS被打开selectmenu的内容,然后将可以使用的项目列表中出现滚动条。
ul.ui-menu { max-height: 420px !important; }
您可能需要,如果你使用的是其他的jQuery UI部件,其中包括与分配类的UI菜单“在<ul>元素在你的CSS来进一步限制这种风格的变化。
一种解决方案给出了例如“选择数字”的的jQueryUI的演示页面 :
$('select').selectmenu().selectmenu("menuWidget").css("height","200px");
如果你想设置最大高度由ID每个项目。 采用:
#select1-menu { max-height: 150px !important; }
#select2-menu { max-height: 200px !important; }
例如,您的selectmenu的id是“选择”使用:
#select-menu { max-height: 150px !important; }
<!--JQUERY-->
$('.custom-combobox-toggle').on('click',function (e) {
e.preventDefault();
$('.ui-menu').addClass('custom-scroll');
});
<!--CSS-->
.ui-widget.ui-widget-content.custom-scroll {
max-height: 300px;
overflow: auto;
display: block;
}