diff options
author | Kris Borchers <kris.borchers@gmail.com> | 2012-12-27 21:06:06 -0600 |
---|---|---|
committer | Kris Borchers <kris.borchers@gmail.com> | 2012-12-27 21:06:54 -0600 |
commit | 5143b7f672bc668963cce7dcf5dd4e2970aad8e5 (patch) | |
tree | ad595604f8f743d0975ffb95792829c6c06c142a /ui | |
parent | 2c3d311f90281e95827708e2e8d0e52832a437de (diff) | |
download | jquery-ui-5143b7f672bc668963cce7dcf5dd4e2970aad8e5.tar.gz jquery-ui-5143b7f672bc668963cce7dcf5dd4e2970aad8e5.zip |
Create mouseHandled flag per instance instead of globally. Fixes #8866 - Menu: select event not firing due to mouseHandled flag reset bug
Diffstat (limited to 'ui')
-rw-r--r-- | ui/jquery.ui.menu.js | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/ui/jquery.ui.menu.js b/ui/jquery.ui.menu.js index 8d99272d0..3c445eca1 100644 --- a/ui/jquery.ui.menu.js +++ b/ui/jquery.ui.menu.js @@ -15,8 +15,6 @@ */ (function( $, undefined ) { -var mouseHandled = false; - $.widget( "ui.menu", { version: "@VERSION", defaultElement: "<ul>", @@ -40,6 +38,7 @@ $.widget( "ui.menu", { _create: function() { this.activeMenu = this.element; + this.mouseHandled = false; this.element .uniqueId() .addClass( "ui-menu ui-widget ui-widget-content ui-corner-all" ) @@ -73,8 +72,8 @@ $.widget( "ui.menu", { }, "click .ui-menu-item:has(a)": function( event ) { var target = $( event.target ).closest( ".ui-menu-item" ); - if ( !mouseHandled && target.not( ".ui-state-disabled" ).length ) { - mouseHandled = true; + if ( !this.mouseHandled && target.not( ".ui-state-disabled" ).length ) { + this.mouseHandled = true; this.select( event ); // Open submenu on click @@ -130,7 +129,7 @@ $.widget( "ui.menu", { } // Reset the mouseHandled flag - mouseHandled = false; + this.mouseHandled = false; } }); }, |