diff options
-rw-r--r-- | tests/unit/menu/menu_events.js | 21 | ||||
-rw-r--r-- | ui/jquery.ui.menu.js | 12 |
2 files changed, 3 insertions, 30 deletions
diff --git a/tests/unit/menu/menu_events.js b/tests/unit/menu/menu_events.js index 3f834fd66..8fa77ab95 100644 --- a/tests/unit/menu/menu_events.js +++ b/tests/unit/menu/menu_events.js @@ -629,27 +629,6 @@ asyncTest( "handle keyboard navigation with spelling of menu items", function() element[ 0 ].focus(); }); -test( "ensure default is prevented when clicking on anchors in disabled menus ", function() { - expect( 1 ); - var element = $( "#menu1" ).menu(); - element.bind( "click.menu", function(event) { - if ( !event.isDefaultPrevented() ) { - log(); - } - }); - log( "click", true ); - click( element, "1" ); - log( "afterclick,disable" ); - element.menu( "option", "disabled", true ); - click( element, "2" ); - click( element, "3" ); - click( element, "1" ); - log( "enable" ); - element.menu( "option", "disabled", false ); - click( element, "3" ); - equal( logOutput(), "click,1,afterclick,disable,enable,3", "Click order not valid." ); -}); - test( "#9469: Stopping propagation in a select event should not suppress subsequent select events.", function() { expect( 1 ); var element = $( "#menu1" ).menu({ diff --git a/ui/jquery.ui.menu.js b/ui/jquery.ui.menu.js index 86ef4577e..f160f8e6b 100644 --- a/ui/jquery.ui.menu.js +++ b/ui/jquery.ui.menu.js @@ -39,7 +39,8 @@ $.widget( "ui.menu", { _create: function() { this.activeMenu = this.element; - // flag used to prevent firing of the click handler + + // Flag used to prevent firing of the click handler // as the event bubbles up through nested menus this.mouseHandled = false; this.element @@ -49,14 +50,7 @@ $.widget( "ui.menu", { .attr({ role: this.options.role, tabIndex: 0 - }) - // need to catch all clicks on disabled menu - // not possible through _on - .bind( "click" + this.eventNamespace, $.proxy(function( event ) { - if ( this.options.disabled ) { - event.preventDefault(); - } - }, this )); + }); if ( this.options.disabled ) { this.element |