FullCalendar:refetchEvents 调用导致所有会议在 re-rendering 期间闪烁

FullCalendar: refetchEvents call causes to all meetings to blink during re-rendering

我玩 fullCalendar 并使用 refetchEvents:

$('#calendar').fullCalendar('refetchEvents');

它正常工作,此命令调用 events 方法并回调

events: function (start, end, timezone, callback) { /* ... */ }

但是它首先删除 日历中的所有会议,之后 - 呈现新会议。这种方法导致所有 table 到 blink(不同于 google 行为)。

有没有其他方法可以在没有 clear-add 的情况下呈现会议?


似乎我只需要添加使工作变得过于困难、混乱而不是 s 的增量table

谢谢,

我的建议是先做ajax请求(你最初放.fullCalendar('refetchEvents')的地方),如果成功了,再调用refetchevents。代码看起来像这样:

var events = [];
$.get('/events/get', function(result){
    events = result;
});    
$('#calendar').fullCalendar({
    events: function (start, end, timezone, callback) {
        callback(events);
    }
});

使用下面的方法代替 refetchEvents,这样它就不会闪烁。

var events = {
                 url: '/getEVents',
                 type: 'GET',
             }
$('#calendar').fullCalendar('removeEventSource', events);
$('#calendar').fullCalendar('addEventSource', events);

将此添加到您的 ajax 参数中:

async:false,

$.ajax({
    url: calendar_url + '&start'+start.unix()+'&end='+end.unix(),
    dataType: 'JSON',
    async:false,
    success: function(response) {
   }
})