Skip to content

Commit 1b775fd

Browse files
committed
fixed: problem with flickering / jumping (follow-up)
1 parent 2f8eb7d commit 1b775fd

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

ui/jquery.ui.selectmenu.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -536,17 +536,20 @@ $.widget("ui.selectmenu", {
536536
self.newelement.addClass('ui-state-active');
537537

538538
self.listWrap.appendTo( o.appendTo );
539-
self.list.attr('aria-hidden', false);
540-
539+
self.list.attr('aria-hidden', false);
540+
self.listWrap.addClass( self.widgetBaseClass + '-open' );
541+
541542
var selected = this._selectedOptionLi();
542543
if ( o.style == "dropdown" ) {
543544
self.newelement.removeClass('ui-corner-all').addClass('ui-corner-top');
544-
// center overflow
545-
this.list.scrollTop( this.list.scrollTop() + selected.position().top - this.list.outerHeight()/2 + selected.outerHeight()/2 );
545+
} else {
546+
// center overflow and avoid flickering
547+
this.list
548+
.css("left", -5000)
549+
.scrollTop( this.list.scrollTop() + selected.position().top - this.list.outerHeight()/2 + selected.outerHeight()/2 )
550+
.css("left","auto");
546551
}
547552

548-
self.listWrap.addClass( self.widgetBaseClass + '-open' );
549-
self.list.attr('aria-hidden', false);
550553
self._refreshPosition();
551554

552555
var link = selected.find("a");

0 commit comments

Comments
 (0)