我正在尝试将eventRender功能用于多个谷歌日历。我已经让日历正常工作了,但是当我从示例中添加eventRender代码时,我会丢失日历。我在这里写了一个代码:https://codepen.io/christidtp/pen/MVrMdB
$(function() {
$('#calendar').fullCalendar({
themeSystem: 'bootstrap4',
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay,listMonth'
},
weekNumbers: false,
eventLimit: true, // allow "more" link when too many events
googleCalendarApiKey: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX',
eventSources: [
{
googleCalendarId: 'XXXX@group.calendar.google.com'
},
{
googleCalendarId: 'XXXX@group.calendar.google.com',
className: 'nice-event'
}
],
eventRender: function(eventObj, $el) {
$el.popover({
title: eventObj.title,
content: eventObj.description,
trigger: 'hover',
placement: 'top',
container: 'body'
});
},
});
});发布于 2018-03-28 17:12:38
函数eventRender中不应该有$前缀参数el .
发布于 2018-05-03 08:03:42
我也有同样的问题。事件对象(https://fullcalendar.io/docs/event-object)的文档:
非标准字段 除了上述字段外,您还可以在每个事件对象中包含您自己的非标准字段。FullCalendar不会修改或删除这些字段。例如,开发人员通常包括一个描述字段,用于回调(如eventRender )。
如果google日历事件没有描述,那么该字段是未定义的,将导致一个无声的错误,很可能是因为它在回调中。
这是我的解决办法。我对javascript一无所知,所以我会好奇是否有一种更干净的方法来安全地获得属性,就像在本例中一样。
eventRender: function(eventObj, el) {
if (eventObj.description === undefined) {
eventObj.description = "";
}
$(el).popover({
trigger: 'hover',
title: eventObj.title,
content: eventObj.description,
placement: 'top',
container: 'body'
});
}https://stackoverflow.com/questions/49540429
复制相似问题