私はしばらくqtipsに苦しんできましたが、ここでは最終的に私のために働いたコードです。特に、マウスを動かしたり、イベントをドラッグしたりするとき、バグや一見ランダムな動作を防ぎます。
fullCalendarのeventRenderからこの関数を呼び出します。 はeventRender関数で渡される2番目のパラメータで、残りはオプションです(オプションオブジェクト(ツールヒントのtitle
とtext
、target
はqTip2ドキュメントで定義されています)。hideEvents
はスペースで区切られたJSイベントのリストで、は、例えば、"mousedown mouseup mouseleave"
のように発砲される。
/** adds a tooltip to a specified element, like an event or resource */
function addToolTip(element, o, target, hideEvents) {
if (target === undefined || target === null) {
target = false;
}
if (hideEvents === undefined) {
hideEvents = "mousedown mouseup mouseleave";
}
element.qtip({
content: {
title: o.title,
text: o.text
}
, position: {
my: "bottom center",
at: "top center",
target: target // "mouse" is buggy when dragging and interferes with clicking
//adjust: { y: -9}
}
, style: {
tip: { corner: 'bottom center' },
classes: 'qtip-light qtip-shadow'
},
show: {
effect: function() {
$(this).fadeTo(300, 1);
},
solo: true,
delay: 200
},
hide: {
effect: true,
event: hideEvents // otherwise stays while dragging
}
});
}
出典
2016-07-05 05:08:08
K48