This commit is contained in:
132
WebRoot/js/easyui-1.3.5/plugins/jquery.menubutton.js
Normal file
132
WebRoot/js/easyui-1.3.5/plugins/jquery.menubutton.js
Normal file
@@ -0,0 +1,132 @@
|
||||
/**
|
||||
* jQuery EasyUI 1.3.5
|
||||
*
|
||||
* Copyright (c) 2009-2013 www.jeasyui.com. All rights reserved.
|
||||
*
|
||||
* Licensed under the GPL or commercial licenses
|
||||
* To use it on other terms please contact us: info@jeasyui.com
|
||||
* http://www.gnu.org/licenses/gpl.txt
|
||||
* http://www.jeasyui.com/license_commercial.php
|
||||
*
|
||||
*/
|
||||
(function($){
|
||||
function _1(_2){
|
||||
var _3=$.data(_2,"menubutton").options;
|
||||
var _4=$(_2);
|
||||
_4.removeClass(_3.cls.btn1+" "+_3.cls.btn2).addClass("m-btn");
|
||||
_4.linkbutton($.extend({},_3,{text:_3.text+"<span class=\""+_3.cls.arrow+"\"> </span>"}));
|
||||
if(_3.menu){
|
||||
$(_3.menu).menu();
|
||||
var _5=$(_3.menu).menu("options");
|
||||
var _6=_5.onShow;
|
||||
var _7=_5.onHide;
|
||||
$.extend(_5,{onShow:function(){
|
||||
var _8=$(this).menu("options");
|
||||
var _9=$(_8.alignTo);
|
||||
var _a=_9.menubutton("options");
|
||||
_9.addClass((_a.plain==true)?_a.cls.btn2:_a.cls.btn1);
|
||||
_6.call(this);
|
||||
},onHide:function(){
|
||||
var _b=$(this).menu("options");
|
||||
var _c=$(_b.alignTo);
|
||||
var _d=_c.menubutton("options");
|
||||
_c.removeClass((_d.plain==true)?_d.cls.btn2:_d.cls.btn1);
|
||||
_7.call(this);
|
||||
}});
|
||||
}
|
||||
_e(_2,_3.disabled);
|
||||
};
|
||||
function _e(_f,_10){
|
||||
var _11=$.data(_f,"menubutton").options;
|
||||
_11.disabled=_10;
|
||||
var btn=$(_f);
|
||||
var t=btn.find("."+_11.cls.trigger);
|
||||
if(!t.length){
|
||||
t=btn;
|
||||
}
|
||||
t.unbind(".menubutton");
|
||||
if(_10){
|
||||
btn.linkbutton("disable");
|
||||
}else{
|
||||
btn.linkbutton("enable");
|
||||
var _12=null;
|
||||
t.bind("click.menubutton",function(){
|
||||
_13(_f);
|
||||
return false;
|
||||
}).bind("mouseenter.menubutton",function(){
|
||||
_12=setTimeout(function(){
|
||||
_13(_f);
|
||||
},_11.duration);
|
||||
return false;
|
||||
}).bind("mouseleave.menubutton",function(){
|
||||
if(_12){
|
||||
clearTimeout(_12);
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
function _13(_14){
|
||||
var _15=$.data(_14,"menubutton").options;
|
||||
if(_15.disabled||!_15.menu){
|
||||
return;
|
||||
}
|
||||
$("body>div.menu-top").menu("hide");
|
||||
var btn=$(_14);
|
||||
var mm=$(_15.menu);
|
||||
if(mm.length){
|
||||
mm.menu("options").alignTo=btn;
|
||||
mm.menu("show",{alignTo:btn});
|
||||
}
|
||||
btn.blur();
|
||||
};
|
||||
$.fn.menubutton=function(_16,_17){
|
||||
if(typeof _16=="string"){
|
||||
var _18=$.fn.menubutton.methods[_16];
|
||||
if(_18){
|
||||
return _18(this,_17);
|
||||
}else{
|
||||
return this.linkbutton(_16,_17);
|
||||
}
|
||||
}
|
||||
_16=_16||{};
|
||||
return this.each(function(){
|
||||
var _19=$.data(this,"menubutton");
|
||||
if(_19){
|
||||
$.extend(_19.options,_16);
|
||||
}else{
|
||||
$.data(this,"menubutton",{options:$.extend({},$.fn.menubutton.defaults,$.fn.menubutton.parseOptions(this),_16)});
|
||||
$(this).removeAttr("disabled");
|
||||
}
|
||||
_1(this);
|
||||
});
|
||||
};
|
||||
$.fn.menubutton.methods={options:function(jq){
|
||||
var _1a=jq.linkbutton("options");
|
||||
var _1b=$.data(jq[0],"menubutton").options;
|
||||
_1b.toggle=_1a.toggle;
|
||||
_1b.selected=_1a.selected;
|
||||
return _1b;
|
||||
},enable:function(jq){
|
||||
return jq.each(function(){
|
||||
_e(this,false);
|
||||
});
|
||||
},disable:function(jq){
|
||||
return jq.each(function(){
|
||||
_e(this,true);
|
||||
});
|
||||
},destroy:function(jq){
|
||||
return jq.each(function(){
|
||||
var _1c=$(this).menubutton("options");
|
||||
if(_1c.menu){
|
||||
$(_1c.menu).menu("destroy");
|
||||
}
|
||||
$(this).remove();
|
||||
});
|
||||
}};
|
||||
$.fn.menubutton.parseOptions=function(_1d){
|
||||
var t=$(_1d);
|
||||
return $.extend({},$.fn.linkbutton.parseOptions(_1d),$.parser.parseOptions(_1d,["menu",{plain:"boolean",duration:"number"}]));
|
||||
};
|
||||
$.fn.menubutton.defaults=$.extend({},$.fn.linkbutton.defaults,{plain:true,menu:null,duration:100,cls:{btn1:"m-btn-active",btn2:"m-btn-plain-active",arrow:"m-btn-downarrow",trigger:"m-btn"}});
|
||||
})(jQuery);
|
||||
|
||||
Reference in New Issue
Block a user