Skip to content

Commit 48ad099

Browse files
committed
Menu: Prevent clicking on disabled menu items and remove unnecessary extra padding from disabled items.
1 parent 4259978 commit 48ad099

File tree

3 files changed

+17
-13
lines changed

3 files changed

+17
-13
lines changed

tests/visual/menu/menu.html

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,12 @@
7676
<ul id="menu2">
7777
<li><a href="#">Aberdeen</a></li>
7878
<li><a href="#">Ada</a></li>
79-
<li><a href="#">Adamsville</a></li>
79+
<li class="ui-state-disabled"><a href="#">Adamsville</a></li>
8080
<li><a href="#">Addyston</a></li>
8181
<li>
8282
<a href="#">Delphi</a>
8383
<ul>
84-
<li><a href="#">Ada</a></li>
84+
<li class="ui-state-disabled"><a href="#">Ada</a></li>
8585
<li><a href="#">Saarland</a></li>
8686
<li><a href="#">Salzburg</a></li>
8787
</ul>
@@ -113,7 +113,7 @@
113113

114114
<ul id="menu3">
115115
<li><a href="#"><span class="ui-icon ui-icon-print"></span>Aberdeen</a></li>
116-
<li><a href="#"><span class="ui-icon ui-icon-scissors"></span>Ada</a></li>
116+
<li class="ui-state-disabled"><a href="#"><span class="ui-icon ui-icon-scissors"></span>Ada</a></li>
117117
<li><a href="#">Adamsville</a></li>
118118
<li><a href="#"><span class="ui-icon ui-icon-wrench"></span>Addyston</a></li>
119119
<li>
@@ -193,7 +193,7 @@
193193
<div id="menu5">
194194
<blockquote><a href="#">Aberdeen</a></blockquote>
195195
<blockquote><a href="#">Ada</a></blockquote>
196-
<blockquote><a href="#">Adamsville</a></blockquote>
196+
<blockquote class="ui-state-disabled"><a href="#">Adamsville</a></blockquote>
197197
<blockquote><a href="#">Addyston</a></blockquote>
198198
<blockquote>
199199
<a href="#">Delphi</a>
@@ -243,7 +243,7 @@
243243
<span class="address-content">Bloomsburg, PA 12345</span>
244244
</a>
245245
</div>
246-
<div class="address-item">
246+
<div class="address-item ui-state-disabled">
247247
<a href="#">
248248
<span class="address-header">James Doe</span>
249249
<span class="address-content">78 West Main St Apt 3A</span>

themes/base/jquery.ui.menu.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
.ui-menu .ui-menu-item a.ui-state-focus,
1515
.ui-menu .ui-menu-item a.ui-state-active { font-weight: normal; margin: -1px; }
1616

17-
.ui-menu .ui-state-disabled { font-weight: normal; padding: .0em .4em; margin: .4em 0 .2em; line-height: 1.5; }
17+
.ui-menu .ui-state-disabled { font-weight: normal; margin: .4em 0 .2em; line-height: 1.5; }
1818

1919
/* icon support */
2020
.ui-menu-icons { position: relative; }

ui/jquery.ui.menu.js

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,17 @@ $.widget( "ui.menu", {
5656
},
5757
"click .ui-menu-item:has(a)": function( event ) {
5858
event.stopImmediatePropagation();
59-
this.select( event );
60-
// Redirect focus to the menu with a delay for firefox
61-
this._delay( function() {
62-
if ( !this.element.is(":focus") ) {
63-
this.element.focus();
64-
}
65-
}, 20);
59+
//Don't select disabled menu items
60+
if ( !$( event.target ).closest( ".ui-menu-item" ).is( ".ui-state-disabled" ) ) {
61+
console.log(event.target);
62+
this.select( event );
63+
// Redirect focus to the menu with a delay for firefox
64+
this._delay( function() {
65+
if ( !this.element.is(":focus") ) {
66+
this.element.focus();
67+
}
68+
}, 20);
69+
}
6670
},
6771
"mouseover .ui-menu-item": function( event ) {
6872
event.stopImmediatePropagation();

0 commit comments

Comments
 (0)