Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 27 additions & 19 deletions jquery.multiselect.css
Original file line number Diff line number Diff line change
@@ -1,23 +1,31 @@
.ui-multiselect { padding:2px 0 2px 4px; text-align:left }
.ui-multiselect span.ui-icon { float:right }
.ui-multiselect-single .ui-multiselect-checkboxes input { position:absolute !important; top: auto !important; left:-9999px; }
.ui-multiselect-single .ui-multiselect-checkboxes label { padding:5px !important }
.ui-multiselect.ui-widget.ui-state-default { -ms-text-overflow: ellipsis; -o-text-overflow: ellipsis; -moz-text-overflow: ellipsis; text-overflow: ellipsis; white-space: pre; overflow: hidden; }
.ui-multiselect { padding: 2px 0 2px 4px; text-align: left; margin: 2px 0; }
.ui-multiselect.Rtl { padding: 2px 4px 2px 0; text-align: right; margin: 2px 0; direction:rtl }
.ui-multiselect span.ui-icon { float: right; }
.ui-multiselect.Rtl span.ui-icon { float: left; }
.ui-multiselect-single .ui-multiselect-checkboxes input { position: absolute !important; top: auto !important; left: -9999px; }
.ui-multiselect-single.Rtl .ui-multiselect-checkboxes input { right: -9999px; left: auto; }
.ui-multiselect-single .ui-multiselect-checkboxes label { padding: 5px !important; }

.ui-multiselect-header { margin-bottom:3px; padding:3px 0 3px 4px }
.ui-multiselect-header ul { font-size:0.9em }
.ui-multiselect-header ul li { float:left; padding:0 10px 0 0 }
.ui-multiselect-header a { text-decoration:none }
.ui-multiselect-header a:hover { text-decoration:underline }
.ui-multiselect-header span.ui-icon { float:left }
.ui-multiselect-header li.ui-multiselect-close { float:right; text-align:right; padding-right:0 }
.ui-multiselect-header { margin-bottom: 3px; padding: 3px 0 3px 4px; }
.ui-multiselect-header ul { font-size: 0.9em; }
.ui-multiselect-header ul li { float: left; padding: 0 10px 0 0; }
.ui-multiselect-menu.Rtl .ui-multiselect-header ul li {float: right}
.ui-multiselect-header a { text-decoration: none; }
.ui-multiselect-header a:hover { text-decoration: underline; }
.ui-multiselect-header span.ui-icon { float: left; }
.ui-multiselect-menu.Rtl .ui-multiselect-header span.ui-icon { float: right; }
.ui-multiselect-header li.ui-multiselect-close { float: right; text-align: right; padding-right: 0; }
.ui-multiselect-menu.Rtl .ui-multiselect-header li.ui-multiselect-close { float: left; text-align: left; padding-left: 0; }
.ui-multiselect-menu { display: none; padding: 3px; position: absolute; z-index: 10000; text-align: left; }
.ui-multiselect-menu.Rtl { text-align: right; direction:rtl }

.ui-multiselect-menu { display:none; padding:3px; position:absolute; z-index:10000; text-align: left }
.ui-multiselect-checkboxes { position:relative /* fixes bug in IE6/7 */; overflow-y:auto }
.ui-multiselect-checkboxes label { cursor:default; display:block; border:1px solid transparent; padding:3px 1px }
.ui-multiselect-checkboxes label input { position:relative; top:1px }
.ui-multiselect-checkboxes li { clear:both; font-size:0.9em; padding-right:3px }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label { text-align:center; font-weight:bold; border-bottom:1px solid }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a { display:block; padding:3px; margin:1px 0; text-decoration:none }
.ui-multiselect-checkboxes { position: relative /* fixes bug in IE6/7 */; -o-overflow-y: auto; overflow-y: auto; }
.ui-multiselect-checkboxes label { cursor: default; display: block; border: 1px solid transparent; padding: 3px 1px; }
.ui-multiselect-checkboxes label input { position: relative; top: 1px; }
.ui-multiselect-checkboxes li { clear: both; font-size: 0.9em; padding-right: 3px; }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label { text-align: center; font-weight: bold; border-bottom: 1px solid; }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a { display: block; padding: 3px; margin: 1px 0; text-decoration: none; }

/* remove label borders in IE6 because IE6 does not support transparency */
* html .ui-multiselect-checkboxes label { border:none }
* html .ui-multiselect-checkboxes label { border: none; }
7 changes: 4 additions & 3 deletions jquery.multiselect.filter.css
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.ui-multiselect-hasfilter ul { position:relative; top:2px }
.ui-multiselect-filter { float:left; margin-right:10px; font-size:11px }
.ui-multiselect-filter input { width:100px; font-size:10px; margin-left:5px; height:15px; padding:2px; border:1px solid #292929; -webkit-appearance:textfield; -webkit-box-sizing:content-box; }
.ui-multiselect-hasfilter ul{position:relative;top:2px;}
.ui-multiselect-filter{float:left;margin-right:5px;margin-left:5px;}
.ui-multiselect-menu.Rtl .ui-multiselect-filter{float:right;}
.ui-multiselect-filter input{width:100px;height:16px;-webkit-appearance:textfield;-moz-box-sizing:content-box;-ms-box-sizing:content-box;-o-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}
1 change: 1 addition & 0 deletions src/jquery.multiselect.filter.packed.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 18 additions & 6 deletions src/jquery.multiselect.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
header: true,
height: 175,
minWidth: 225,
minWidthMenu: 225,
classes: '',
checkAllText: 'Check all',
uncheckAllText: 'Uncheck all',
Expand Down Expand Up @@ -352,6 +353,8 @@
break;
case 13: // enter
$(this).find('input')[0].click();
if(!self.options.multiple)
self.button.focus();
break;
}
})
Expand Down Expand Up @@ -440,6 +443,9 @@
_setMenuWidth: function() {
var m = this.menu;
var width = (this.button.outerWidth() <= 0) ? this.options.minWidth : this.button.outerWidth();
if(/\d/.test(this.options.minWidthMenu) && width < this.options.minWidthMenu) {
width = this.options.minWidthMenu;
}
m.outerWidth(width);
},

Expand Down Expand Up @@ -681,12 +687,18 @@

// otherwise fallback to custom positioning
} else {
var pos = this.button.offset();

this.menu.css({
top: pos.top + this.button.outerHeight(),
left: pos.left
});
var pos = this.button.offset();
var posTop = pos.top + this.button.outerHeight();
if ((posTop + o.height) > $(window).height())
{
posTop = posTop - (this.menu.outerHeight() + this.button.outerHeight());
if( posTop < 0 )
posTop = 0;
}
this.menu.css({
top: posTop,
left: pos.left
});
}
},

Expand Down
2 changes: 1 addition & 1 deletion src/jquery.multiselect.min.js

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions src/jquery.multiselect.packed.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.