mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
Merge branch 'master' into selectmenu
This commit is contained in:
commit
672218bfec
15
ui/jquery.ui.menu.js
vendored
15
ui/jquery.ui.menu.js
vendored
@ -294,6 +294,21 @@ $.widget( "ui.menu", {
|
|||||||
focus: function( event, item ) {
|
focus: function( event, item ) {
|
||||||
this.blur( event );
|
this.blur( event );
|
||||||
|
|
||||||
|
if ( this._hasScroll() ) {
|
||||||
|
var borderTop = parseFloat( $.curCSS( this.activeMenu[0], "borderTopWidth", true ) ) || 0,
|
||||||
|
paddingTop = parseFloat( $.curCSS( this.activeMenu[0], "paddingTop", true ) ) || 0,
|
||||||
|
offset = item.offset().top - this.activeMenu.offset().top - borderTop - paddingTop,
|
||||||
|
scroll = this.activeMenu.scrollTop(),
|
||||||
|
elementHeight = this.activeMenu.height(),
|
||||||
|
itemHeight = item.height();
|
||||||
|
|
||||||
|
if ( offset < 0 ) {
|
||||||
|
this.activeMenu.scrollTop( scroll + offset );
|
||||||
|
} else if ( offset + itemHeight > elementHeight ) {
|
||||||
|
this.activeMenu.scrollTop( scroll + offset - elementHeight + itemHeight );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
this.active = item.first()
|
this.active = item.first()
|
||||||
.children( "a" )
|
.children( "a" )
|
||||||
.addClass( "ui-state-focus" )
|
.addClass( "ui-state-focus" )
|
||||||
|
Loading…
Reference in New Issue
Block a user