From: Kris Borchers Date: Thu, 1 Aug 2013 01:20:13 +0000 (-0500) Subject: Menu: Make check for click outside of menu a function which can be overridden. Fixes... X-Git-Tag: 1.10.4~48 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2a7896ec3eac09aa13fc6e0f8bf8316e7985387e;p=jquery-ui.git Menu: Make check for click outside of menu a function which can be overridden. Fixes #8929 - Menu needs adjustement for use in Selectmenu (cherry picked from commit cceb163548eea78525a3a60ada95a5af6e3ddf25) --- diff --git a/ui/jquery.ui.menu.js b/ui/jquery.ui.menu.js index 93309f7f1..8cb2f8ed2 100644 --- a/ui/jquery.ui.menu.js +++ b/ui/jquery.ui.menu.js @@ -130,7 +130,7 @@ $.widget( "ui.menu", { // Clicks outside of a menu collapse any open menus this._on( this.document, { click: function( event ) { - if ( !$( event.target ).closest( ".ui-menu" ).length ) { + if ( this._closeOnDocumentClick( event ) ) { this.collapseAll( event ); } @@ -497,6 +497,10 @@ $.widget( "ui.menu", { .removeClass( "ui-state-active" ); }, + _closeOnDocumentClick: function( event ) { + return !$( event.target ).closest( ".ui-menu" ).length; + }, + collapse: function( event ) { var newItem = this.active && this.active.parent().closest( ".ui-menu-item", this.element );