У меня есть jquery fullcalendar. Я хотел бы вызвать jquery QTip (или другое решение jquery (например, лайтбокс)), когда я нажимаю на день, чтобы открыть список опций. Этот вопрос похож на this question already posted, однако он достаточно разный, чтобы гарантировать новый вопрос.Триггер jQuery Qtip на FullCalendar dayClick
Существует event callback для этого, но я не уверен, как интегрировать это с 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.
Теперь мне просто нужно, чтобы объединить эти два примера ...
UPDATE 26/05/2010
Craig на QTIP форумах предложил использовать функцию обратного вызова 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, доступной через этот обратный вызов, что делает невозможным поставить подсказку рядом с нажатой датой.
Вся помощь очень ценится!
Спасибо,
Tim
Hey LionHeart. Вы чемпион! Вау, спасибо большое. Это довольно удивительно и работает почти отлично. Одна маленькая вещь ... Мне нужно избегать запуска qtip, если «allDay» является ложным из обратного вызова события «dayClick». Я могу получить доступ к данным, но как добавить их в оператор if? Еще раз спасибо, Tim – Tim
Смотрите, если это работает: Изменить если (TypeOf $ (это) .data ("QTIP") == "объект") { К если ($ TypeOf (this) .data ("qtip")! == "object" && allDay) { – Lionheart
Perfect Lionheart !!! Я не могу поблагодарить вас! – Tim