jquery完整日历:在日历完全加载后回调'

时间:2012-02-14 05:08:42

标签: javascript jquery callback fullcalendar

在Adam Shaw的jquery完整日历中是否有回调在日历完全呈现后调用?我想在该回调中调用clientEvents函数以获取客户端上的所有事件。我尝试在viewDisplay中执行此操作,但在呈现事件之前调用它并且clientEvents返回0个事件。

4 个答案:

答案 0 :(得分:22)

我知道这篇文章现在相当陈旧,但如果有任何帮助,你不需要按照Cheery的建议修改原始来源(尽管他/她的回答也可以正常工作)。

你也可以使用已经存在的回调'loading':

$('#calendar').fullCalendar({
   loading: function(bool) {
      if (bool){
         alert('I am populating the calendar with events');
      }
      else{
         alert('W00t, I have finished!');
         // bind to all your events here
      }
   }
);

答案 1 :(得分:9)

实际上你可以自己添加它。更新render中的函数fullcalendar.js,如下所示

function render(inc) {
    if (!content) {
        initialRender();
        trigger('complete', null, true);
    }else{
        calcSize();
        markSizesDirty();
        markEventsDirty();
        renderView(inc);
        trigger('complete', null, true);
    }
} 

并添加到初始调用回调函数:

$('#calendar').fullCalendar({
         editable: true,
         complete: function() {alert('complete');}, 

或者,如您所愿,您可以访问所有活动

    complete: function() {
        var events = $(this).fullCalendar('clientEvents');
        for(var i in events)
        {
            alert(events[i].title);
        }
    },

答案 2 :(得分:7)

现在可能已经过时了,但目前有一个正式的回调函数(在1.6版中添加):eventAfterAllRender。无需修改源代码。

答案 3 :(得分:0)

viewRender事件就是答案;加载仅适用于内容加载。

相关问题