mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
Menubar: Added the autoExpand option and modified the default demo to show functionality
This commit is contained in:
parent
ab627e03a6
commit
40aa8f5715
@ -23,6 +23,7 @@
|
||||
});
|
||||
|
||||
$(".menubar-icons").menubar({
|
||||
autoExpand: true,
|
||||
menuIcon: true,
|
||||
buttons: true,
|
||||
position: {
|
||||
|
23
ui/jquery.ui.menubar.js
vendored
23
ui/jquery.ui.menubar.js
vendored
@ -20,6 +20,7 @@
|
||||
$.widget( "ui.menubar", {
|
||||
version: "@VERSION",
|
||||
options: {
|
||||
autoExpand: false,
|
||||
buttons: false,
|
||||
menuIcon: false,
|
||||
position: {
|
||||
@ -89,7 +90,11 @@ $.widget( "ui.menubar", {
|
||||
that._close();
|
||||
return;
|
||||
}
|
||||
if ( ( that.open && event.type == "mouseenter" ) || event.type == "click" ) {
|
||||
if ( ( that.open && event.type == "mouseenter" ) || event.type == "click" || that.options.autoExpand ) {
|
||||
if( that.options.autoExpand ) {
|
||||
clearTimeout( that.timer );
|
||||
}
|
||||
|
||||
that._open( event, menu );
|
||||
}
|
||||
})
|
||||
@ -116,6 +121,22 @@ $.widget( "ui.menubar", {
|
||||
.attr( "aria-haspopup", "true" )
|
||||
.wrapInner( "<span class='ui-button-text'></span>" );
|
||||
|
||||
if ( that.options.autoExpand ) {
|
||||
input.bind( "mouseleave.menubar", function( event ) {
|
||||
that.timer = setTimeout( function() {
|
||||
that._close();
|
||||
}, 150 );
|
||||
});
|
||||
menu.bind( "mouseleave.menubar", function( event ) {
|
||||
that.timer = setTimeout( function() {
|
||||
that._close();
|
||||
}, 150 );
|
||||
})
|
||||
.bind( "mouseenter.menubar", function( event ) {
|
||||
clearTimeout( that.timer );
|
||||
});
|
||||
}
|
||||
|
||||
// TODO review if these options are a good choice, maybe they can be merged
|
||||
if ( that.options.menuIcon ) {
|
||||
input.addClass( "ui-state-default" ).append( "<span class='ui-button-icon-secondary ui-icon ui-icon-triangle-1-s'></span>" );
|
||||
|
Loading…
Reference in New Issue
Block a user