aboutsummaryrefslogtreecommitdiffstats
path: root/ui/jquery.ui.menu.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/jquery.ui.menu.js')
-rw-r--r--ui/jquery.ui.menu.js22
1 files changed, 15 insertions, 7 deletions
diff --git a/ui/jquery.ui.menu.js b/ui/jquery.ui.menu.js
index d3c32e3a0..1bfd76716 100644
--- a/ui/jquery.ui.menu.js
+++ b/ui/jquery.ui.menu.js
@@ -202,13 +202,11 @@ $.widget( "ui.menu", {
event.preventDefault();
break;
case $.ui.keyCode.ENTER:
- if ( !this.active.is( ".ui-state-disabled" ) ) {
- if ( this.active.children( "a[aria-haspopup='true']" ).length ) {
- this.expand( event );
- } else {
- this.select( event );
- }
- }
+ this._activate( event );
+ event.preventDefault();
+ break;
+ case $.ui.keyCode.SPACE:
+ this._activate( event );
event.preventDefault();
break;
case $.ui.keyCode.ESCAPE:
@@ -260,6 +258,16 @@ $.widget( "ui.menu", {
}
},
+ _activate: function( event ) {
+ if ( !this.active.is( ".ui-state-disabled" ) ) {
+ if ( this.active.children( "a[aria-haspopup='true']" ).length ) {
+ this.expand( event );
+ } else {
+ this.select( event );
+ }
+ }
+ },
+
refresh: function() {
// initialize nested menus
var menus,