Я недавно запустил проект, использующий Fullcalendar (http://arshaw.com/fullcalendar/) для отображения нескольких каналов Календаря Google, в первую очередь для возможности контроля над темой. Я хотел бы сохранить как можно большую часть функциональности Календаря Google, как ивозможно, хотя и только для чтения, для использования вместо встроенного виджета, который предоставляет Google. С этой целью я пытаюсь изменить поведение по умолчанию eventClick для отображения информации из поля описания события во всплывающей подсказке (возможно, qTip?)вместо прямой ссылки на страницу с информацией о событии.
Мне кажется, что первым шагом для достижения этой цели будет получение поля описания из XML-канала Google (который, насколько я могу судить, можно преобразовать).в канал JSON через предоставленный плагин Google) и добавив его к полям по умолчанию объекта события. К сожалению, это все, что мне ясно. Я нашел этот вопрос , который, кажется,просить то же самое, где этот код отО, файл gcal.js упоминался как решение, но я все еще не уверен, каким образом я должен интегрировать опции из event.push в объекты событий, созданные моими источниками событий.
events.push({
id: entry['gCal$uid']['value'],
title: entry['title']['$t'],
url: url,
start: start,
end: end,
allDay: allDay,
location: entry['gd$where'][0]['valueString'],
description: entry['content']['$t']
});
В настоящее время мои EventSources настроены в виде массива с параметрами, например:
eventSources:[
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/j6q1n0lq7vf222o6kltaupa01s%40group.calendar.google.com/public/full",{className: 'prime',color:'#003366'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/j6q1n0lq7vf222o6kltaupa01s%40group.calendar.google.com/public/full",{className: 'premium',color:'#006699'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/jv19jhbr7fepl3rfh474l5udgc%40group.calendar.google.com/public/full",{className: 'platinum',color:'#80CCD4'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/n058u7qetmcm2p49p7s650v5e0%40group.calendar.google.com/public/full",{className: 'che',color:'#607386'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/j92j2chtbqu5bob9scv0u2hlfo%40group.calendar.google.com/public/full",{className: 'mho',color:'#587498'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/t1vglkquofrk91qkbo8stl756g%40group.calendar.google.com/public/full",{className: 'mentors',color:'#14B2B2'}),
$.fullCalendar.gcalFeed("https://www.google.com/calendar/feeds/mbb6akqbs4rdetqre07cuhi2vs%40group.calendar.google.com/public/full",{className: 'weddings',color:'#660033'})
],
Я также попытался настроить EventSources как функцию, как описано в документации Fullcalendar но установка поля description: $ (this) .attr ('description'), похоже, тоже не сработала.Если сейчас это не очевидно, я ни в коем случае не кодирую ниндзя, но я хорошо следую инструкциям, когда они предоставляются, и обычно могу выяснить, где мне нужно подключать переменные, если они предоставляются с примерами рабочего кода.Я почти сошел с ума от этого и буду искренне признателен за любой вклад.Спасибо!