Menubar: Added the autoExpand option and modified the default demo to show functionality

This commit is contained in:
kborchers 2011-07-07 09:29:50 -05:00
parent ab627e03a6
commit 40aa8f5715
2 changed files with 23 additions and 1 deletions

View File

@ -23,6 +23,7 @@
});
$(".menubar-icons").menubar({
autoExpand: true,
menuIcon: true,
buttons: true,
position: {

View File

@ -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>" );