Menu: More precise removal of ui-state-active class for easier CSS overrides. Fixes #9532 - Need a way in Menu to keep ui-state-active class on selected item

This commit is contained in:
Kris Borchers
2013-10-17 23:07:39 -05:00
parent 14065dc23b
commit 52307ebadb
2 changed files with 15 additions and 2 deletions

View File

@@ -371,7 +371,7 @@ $.widget( "ui.menu", {
this._scrollIntoView( item );
this.active = item.first();
focused = this.active.addClass( "ui-state-focus" );
focused = this.active.addClass( "ui-state-focus" ).removeClass( "ui-state-active" );
// Only update aria-activedescendant if there's a role
// otherwise we assume focus is managed elsewhere
if ( this.options.role ) {
@@ -498,7 +498,7 @@ $.widget( "ui.menu", {
.attr( "aria-hidden", "true" )
.attr( "aria-expanded", "false" )
.end()
.find( ".ui-state-active" )
.find( ".ui-state-active" ).not( ".ui-state-focus" )
.removeClass( "ui-state-active" );
},