我有一个jquery fullcalendar。当我单击一天以显示选项列表时,我想触发jquery QTip(或其他 jquery 解决方案(例如灯箱))。这个问题与已经发布的这个问题相似,但不同之处足以保证一个新问题。
有一个事件回调,但我不确定如何将它与 jQuery Qtip 集成......
$('#calendar').fullCalendar({
dayClick: function(date, allDay, jsEvent, view) {
if (allDay) {
alert('Clicked on the entire day: ' + date);
}else{
alert('Clicked on the slot: ' + date);
}
alert('Coordinates: ' + jsEvent.pageX + ',' + jsEvent.pageY);
alert('Current view: ' + view.name);
// change the day's background color just for fun
$(this).css('background-color', 'red');
}
});
这显然会引发警报并将单击的单元格的颜色更改为红色。
这是另一个示例,显示 QTip 被集成以悬停在事件上。
$('#calendar').fullCalendar({
...
eventRender: function(event, element, view)
{
element.qtip({ content: "My Event: " + event.title });
}
...
});
此示例显示了用于触发 QTIP 的悬停回调。
现在我只需要结合这两个例子......
2010 年 5 月 26 日更新
Qtip 论坛上的 Craig 建议使用 viewDisplay 回调作为 DayClick 回调的替代方案,这似乎会导致各种问题。(锁定浏览器是最突出的)。
这是代码:
viewDisplay: function() {
var calendar = $(this);
$(this).qtip({
content: 'TEST',
position: {
my: 'top center',
at: 'top center'
},
show: 'click',
hide: 'click',
style: {
tip: true
}
})
},
此方法在单击一天时显示工具提示。不过有几个问题。
- 据我所知,通过此回调无法访问日期信息,因此很难显示特定于单击日期的工具提示。
- 无法通过此回调访问 X 和 Y 点击信息,因此几乎不可能将提示放在点击日期旁边。
非常感谢所有帮助!
谢谢,
蒂姆