Fixed input field and tipsy positioning in singleselect

If the user scrolls or the window is resized, the formerly cached offset
was wrong. This fix makes sure the offset is re-read before showing the
input field.
This commit is contained in:
Vincent Petry 2013-10-31 10:50:18 +01:00
parent 9d230bcc75
commit 28fbc1b3cc
1 changed files with 3 additions and 4 deletions

View File

@ -7,11 +7,7 @@
input.attr('title', inputTooltip);
}
select = $(select);
if ($.fn.tipsy){
input.tipsy({gravity: 'n', trigger: 'manual'});
}
input.css('position', 'absolute');
input.css(select.offset());
input.css({
'box-sizing': 'border-box',
'-moz-box-sizing': 'border-box',
@ -35,8 +31,11 @@
select.data('previous', value);
} else {
event.stopImmediatePropagation();
// adjust offset, in case the user scrolled
input.css(select.offset());
input.show();
if ($.fn.tipsy){
input.tipsy({gravity: 'n', trigger: 'manual'});
input.tipsy('show');
}
select.css('background-color', 'white');