完整日历:重新获取事件调用会导致所有会议在重新渲染期间闪烁



我玩fullCalendar,我使用refetchEvents:

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

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

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

但是,它首先从日历中删除所有会议,然后 - 呈现新会议。这种方法会导致所有表格闪烁(与谷歌行为不同)。

有没有其他方法可以在没有明文添加的情况下呈现会议?


似乎我只需要添加使工作过于困难、混乱和不稳定的增量

谢谢

我的建议是先执行 ajax 请求(您最初放置 .fullCalendar('refetchEvents') 的位置),如果成功,则调用 refetchevents。代码将如下所示:

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

在 ajax 参数中添加以下内容:

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

使用以下方法而不是重新获取事件,使其不会闪烁。

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

相关内容

  • 没有找到相关文章

最新更新