mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-07 10:41:40 +09:00
Fixed a bug for faceoff menus
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8960 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
0406e395cd
commit
8e36f8938e
2 changed files with 35 additions and 57 deletions
|
|
@ -24,7 +24,7 @@
|
||||||
/* widgetMenu */
|
/* widgetMenu */
|
||||||
#toolbar .widgetMenu{ height:35px; margin:0; padding:0; font-size:12px; line-height:1.2; background:url(../images/bgMenu.gif) repeat-x 0 0;}
|
#toolbar .widgetMenu{ height:35px; margin:0; padding:0; font-size:12px; line-height:1.2; background:url(../images/bgMenu.gif) repeat-x 0 0;}
|
||||||
#toolbar .widgetMenu ul.widgetMenuList{ margin:0; padding:0; height:35px; float:left; }
|
#toolbar .widgetMenu ul.widgetMenuList{ margin:0; padding:0; height:35px; float:left; }
|
||||||
#toolbar .widgetMenu ul.widgetMenuList li ul{ display:none; position:absolute; top:40px; left:0; height:auto; padding:10px 15px; background:#595959; border:1px solid #444;}
|
#toolbar .widgetMenu ul.widgetMenuList li ul{ display:none; position:absolute; top:35px; left:0; height:auto; padding:10px 15px; background:#595959; border:1px solid #444;}
|
||||||
#toolbar .widgetMenu ul.widgetMenuList li.active ul{ display:block;}
|
#toolbar .widgetMenu ul.widgetMenuList li.active ul{ display:block;}
|
||||||
#toolbar .widgetMenu ul.widgetMenuList.aCenter{ margin-left:auto; margin-right:auto;}
|
#toolbar .widgetMenu ul.widgetMenuList.aCenter{ margin-left:auto; margin-right:auto;}
|
||||||
#toolbar .widgetMenu ul.widgetMenuList.aLeft{ margin-right:auto;}
|
#toolbar .widgetMenu ul.widgetMenuList.aLeft{ margin-right:auto;}
|
||||||
|
|
|
||||||
|
|
@ -15,59 +15,36 @@ $.fn.toolbar = function(settings) {
|
||||||
hide : function(){}
|
hide : function(){}
|
||||||
}, settings);
|
}, settings);
|
||||||
|
|
||||||
// get elements
|
this.find(settings.items)
|
||||||
var items = this.find(settings.items);
|
.mouseover(function(){
|
||||||
var menus = items.find('+ ul');
|
var $ul = $(this).next('ul');
|
||||||
var menuitems = menus.find('> li');
|
if($ul.length) showMenu($ul, settings);
|
||||||
|
})
|
||||||
// hover action - submenu
|
.find('+ul>li')
|
||||||
menus.mouseout(
|
.mouseover(function(){
|
||||||
function(event) {
|
var clss = 'tb-menu-item-hover';
|
||||||
var el = $(event.relatedTarget).parents().add(event.relatedTarget);
|
$(this).siblings('li').removeClass(clss).end().addClass(clss);
|
||||||
|
|
||||||
if ( el.index(this) < 0 && el.index($(this).prev()) < 0 ) hideMenu($(this), settings);
|
// callback
|
||||||
}
|
settings.hover(createData(this));
|
||||||
).click(
|
})
|
||||||
function(event) {
|
.find('>button')
|
||||||
var item = $(event.target).parent();
|
.click(function(){
|
||||||
|
var data = createData(this.parentNode);
|
||||||
|
|
||||||
var data = createData(item);
|
// radio button
|
||||||
|
selectItem(data);
|
||||||
if ( !item.is('li') ) return;
|
|
||||||
|
// callback
|
||||||
// radio button
|
settings.click(data);
|
||||||
selectItem(data);
|
})
|
||||||
|
.end()
|
||||||
// callback
|
.end()
|
||||||
settings.click(data);
|
.parent()
|
||||||
}
|
.mouseleave(function(){
|
||||||
);
|
var $ul = $(this).find('>ul:visible');
|
||||||
|
if($ul.length) hideMenu($ul,settings);
|
||||||
menuitems.mouseover(
|
});
|
||||||
function(event){
|
|
||||||
var item = $(this);
|
|
||||||
|
|
||||||
item.parent().find('> li').removeClass('tb-menu-item-hover');
|
|
||||||
item.addClass('tb-menu-item-hover');
|
|
||||||
|
|
||||||
// callback
|
|
||||||
settings.hover(createData(item));
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
// hover action - button
|
|
||||||
items.hover(
|
|
||||||
function(event) {
|
|
||||||
showMenu($(this).find('+ ul'), settings);
|
|
||||||
},
|
|
||||||
function(event) {
|
|
||||||
var menu = $(this).find('+ ul');
|
|
||||||
var el = $(event.relatedTarget).parents().add(event.relatedTarget);
|
|
||||||
|
|
||||||
// hide menu
|
|
||||||
if ( el.index(menu) < 0 && el.index(this) < 0 ) hideMenu(menu, settings);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
@ -127,12 +104,13 @@ function selectItem(data) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function createData(item) {
|
function createData(item) {
|
||||||
|
var $item = $(item);
|
||||||
return {
|
return {
|
||||||
element : item,
|
element : $item,
|
||||||
type : item.attr('tb:type'),
|
type : $item.attr('tb:type'),
|
||||||
arg : item.attr('tb:arg'),
|
arg : $item.attr('tb:arg'),
|
||||||
checked : item.hasClass('tb-menu-item-selected')
|
checked : $item.hasClass('tb-menu-item-selected')
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue