You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
233 lines
5.6 KiB
Plaintext
233 lines
5.6 KiB
Plaintext
/**
|
|
* jQuery EasyUI 1.4.5
|
|
*
|
|
* Copyright (c) 2009-2016 www.jeasyui.com. All rights reserved.
|
|
*
|
|
* Licensed under the freeware license: http://www.jeasyui.com/license_freeware.php
|
|
* To use it on other terms please contact us: info@jeasyui.com
|
|
*
|
|
*/
|
|
(function($){
|
|
function _1(_2){
|
|
$(_2).addClass("tooltip-f");
|
|
};
|
|
function _3(_4){
|
|
var _5=$.data(_4,"tooltip").options;
|
|
$(_4).unbind(".tooltip").bind(_5.showEvent+".tooltip",function(e){
|
|
$(_4).tooltip("show",e);
|
|
}).bind(_5.hideEvent+".tooltip",function(e){
|
|
$(_4).tooltip("hide",e);
|
|
}).bind("mousemove.tooltip",function(e){
|
|
if(_5.trackMouse){
|
|
_5.trackMouseX=e.pageX;
|
|
_5.trackMouseY=e.pageY;
|
|
$(_4).tooltip("reposition");
|
|
}
|
|
});
|
|
};
|
|
function _6(_7){
|
|
var _8=$.data(_7,"tooltip");
|
|
if(_8.showTimer){
|
|
clearTimeout(_8.showTimer);
|
|
_8.showTimer=null;
|
|
}
|
|
if(_8.hideTimer){
|
|
clearTimeout(_8.hideTimer);
|
|
_8.hideTimer=null;
|
|
}
|
|
};
|
|
function _9(_a){
|
|
var _b=$.data(_a,"tooltip");
|
|
if(!_b||!_b.tip){
|
|
return;
|
|
}
|
|
var _c=_b.options;
|
|
var _d=_b.tip;
|
|
var _e={left:-100000,top:-100000};
|
|
if($(_a).is(":visible")){
|
|
_e=_f(_c.position);
|
|
if(_c.position=="top"&&_e.top<0){
|
|
_e=_f("bottom");
|
|
}else{
|
|
if((_c.position=="bottom")&&(_e.top+_d._outerHeight()>$(window)._outerHeight()+$(document).scrollTop())){
|
|
_e=_f("top");
|
|
}
|
|
}
|
|
if(_e.left<0){
|
|
if(_c.position=="left"){
|
|
_e=_f("right");
|
|
}else{
|
|
$(_a).tooltip("arrow").css("left",_d._outerWidth()/2+_e.left);
|
|
_e.left=0;
|
|
}
|
|
}else{
|
|
if(_e.left+_d._outerWidth()>$(window)._outerWidth()+$(document)._scrollLeft()){
|
|
if(_c.position=="right"){
|
|
_e=_f("left");
|
|
}else{
|
|
var _10=_e.left;
|
|
_e.left=$(window)._outerWidth()+$(document)._scrollLeft()-_d._outerWidth();
|
|
$(_a).tooltip("arrow").css("left",_d._outerWidth()/2-(_e.left-_10));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
_d.css({left:_e.left,top:_e.top,zIndex:(_c.zIndex!=undefined?_c.zIndex:($.fn.window?$.fn.window.defaults.zIndex++:""))});
|
|
_c.onPosition.call(_a,_e.left,_e.top);
|
|
function _f(_11){
|
|
_c.position=_11||"bottom";
|
|
_d.removeClass("tooltip-top tooltip-bottom tooltip-left tooltip-right").addClass("tooltip-"+_c.position);
|
|
var _12,top;
|
|
if(_c.trackMouse){
|
|
t=$();
|
|
_12=_c.trackMouseX+_c.deltaX;
|
|
top=_c.trackMouseY+_c.deltaY;
|
|
}else{
|
|
var t=$(_a);
|
|
_12=t.offset().left+_c.deltaX;
|
|
top=t.offset().top+_c.deltaY;
|
|
}
|
|
switch(_c.position){
|
|
case "right":
|
|
_12+=t._outerWidth()+12+(_c.trackMouse?12:0);
|
|
top-=(_d._outerHeight()-t._outerHeight())/2;
|
|
break;
|
|
case "left":
|
|
_12-=_d._outerWidth()+12+(_c.trackMouse?12:0);
|
|
top-=(_d._outerHeight()-t._outerHeight())/2;
|
|
break;
|
|
case "top":
|
|
_12-=(_d._outerWidth()-t._outerWidth())/2;
|
|
top-=_d._outerHeight()+12+(_c.trackMouse?12:0);
|
|
break;
|
|
case "bottom":
|
|
_12-=(_d._outerWidth()-t._outerWidth())/2;
|
|
top+=t._outerHeight()+12+(_c.trackMouse?12:0);
|
|
break;
|
|
}
|
|
return {left:_12,top:top};
|
|
};
|
|
};
|
|
function _13(_14,e){
|
|
var _15=$.data(_14,"tooltip");
|
|
var _16=_15.options;
|
|
var tip=_15.tip;
|
|
if(!tip){
|
|
tip=$("<div tabindex=\"-1\" class=\"tooltip\">"+"<div class=\"tooltip-content\"></div>"+"<div class=\"tooltip-arrow-outer\"></div>"+"<div class=\"tooltip-arrow\"></div>"+"</div>").appendTo("body");
|
|
_15.tip=tip;
|
|
_17(_14);
|
|
}
|
|
_6(_14);
|
|
_15.showTimer=setTimeout(function(){
|
|
$(_14).tooltip("reposition");
|
|
tip.show();
|
|
_16.onShow.call(_14,e);
|
|
var _18=tip.children(".tooltip-arrow-outer");
|
|
var _19=tip.children(".tooltip-arrow");
|
|
var bc="border-"+_16.position+"-color";
|
|
_18.add(_19).css({borderTopColor:"",borderBottomColor:"",borderLeftColor:"",borderRightColor:""});
|
|
_18.css(bc,tip.css(bc));
|
|
_19.css(bc,tip.css("backgroundColor"));
|
|
},_16.showDelay);
|
|
};
|
|
function _1a(_1b,e){
|
|
var _1c=$.data(_1b,"tooltip");
|
|
if(_1c&&_1c.tip){
|
|
_6(_1b);
|
|
_1c.hideTimer=setTimeout(function(){
|
|
_1c.tip.hide();
|
|
_1c.options.onHide.call(_1b,e);
|
|
},_1c.options.hideDelay);
|
|
}
|
|
};
|
|
function _17(_1d,_1e){
|
|
var _1f=$.data(_1d,"tooltip");
|
|
var _20=_1f.options;
|
|
if(_1e){
|
|
_20.content=_1e;
|
|
}
|
|
if(!_1f.tip){
|
|
return;
|
|
}
|
|
var cc=typeof _20.content=="function"?_20.content.call(_1d):_20.content;
|
|
_1f.tip.children(".tooltip-content").html(cc);
|
|
_20.onUpdate.call(_1d,cc);
|
|
};
|
|
function _21(_22){
|
|
var _23=$.data(_22,"tooltip");
|
|
if(_23){
|
|
_6(_22);
|
|
var _24=_23.options;
|
|
if(_23.tip){
|
|
_23.tip.remove();
|
|
}
|
|
if(_24._title){
|
|
$(_22).attr("title",_24._title);
|
|
}
|
|
$.removeData(_22,"tooltip");
|
|
$(_22).unbind(".tooltip").removeClass("tooltip-f");
|
|
_24.onDestroy.call(_22);
|
|
}
|
|
};
|
|
$.fn.tooltip=function(_25,_26){
|
|
if(typeof _25=="string"){
|
|
return $.fn.tooltip.methods[_25](this,_26);
|
|
}
|
|
_25=_25||{};
|
|
return this.each(function(){
|
|
var _27=$.data(this,"tooltip");
|
|
if(_27){
|
|
$.extend(_27.options,_25);
|
|
}else{
|
|
$.data(this,"tooltip",{options:$.extend({},$.fn.tooltip.defaults,$.fn.tooltip.parseOptions(this),_25)});
|
|
_1(this);
|
|
}
|
|
_3(this);
|
|
_17(this);
|
|
});
|
|
};
|
|
$.fn.tooltip.methods={options:function(jq){
|
|
return $.data(jq[0],"tooltip").options;
|
|
},tip:function(jq){
|
|
return $.data(jq[0],"tooltip").tip;
|
|
},arrow:function(jq){
|
|
return jq.tooltip("tip").children(".tooltip-arrow-outer,.tooltip-arrow");
|
|
},show:function(jq,e){
|
|
return jq.each(function(){
|
|
_13(this,e);
|
|
});
|
|
},hide:function(jq,e){
|
|
return jq.each(function(){
|
|
_1a(this,e);
|
|
});
|
|
},update:function(jq,_28){
|
|
return jq.each(function(){
|
|
_17(this,_28);
|
|
});
|
|
},reposition:function(jq){
|
|
return jq.each(function(){
|
|
_9(this);
|
|
});
|
|
},destroy:function(jq){
|
|
return jq.each(function(){
|
|
_21(this);
|
|
});
|
|
}};
|
|
$.fn.tooltip.parseOptions=function(_29){
|
|
var t=$(_29);
|
|
var _2a=$.extend({},$.parser.parseOptions(_29,["position","showEvent","hideEvent","content",{trackMouse:"boolean",deltaX:"number",deltaY:"number",showDelay:"number",hideDelay:"number"}]),{_title:t.attr("title")});
|
|
t.attr("title","");
|
|
if(!_2a.content){
|
|
_2a.content=_2a._title;
|
|
}
|
|
return _2a;
|
|
};
|
|
$.fn.tooltip.defaults={position:"bottom",content:null,trackMouse:false,deltaX:0,deltaY:0,showEvent:"mouseenter",hideEvent:"mouseleave",showDelay:200,hideDelay:100,onShow:function(e){
|
|
},onHide:function(e){
|
|
},onUpdate:function(_2b){
|
|
},onPosition:function(_2c,top){
|
|
},onDestroy:function(){
|
|
}};
|
|
})(jQuery);
|
|
|