jquery fullcalendar:是init完成的吗?

时间:2013-04-18 09:15:27

标签: jquery initialization fullcalendar

我使用此功能更改一个日历的日期(jrsery fullcalender by arshaw)。

function cal_gotoDate(d){
    console.log('cal_gotoDate ' + curCal + ' ' + d);    
    $('#calendar'+curCal).fullCalendar('gotoDate', d);
    cal_setTitle();
    return false;
}

问题:日历将通过使用ajax动态加载。当用户尝试更改日期时,可能会发生未加载日历的情况。因此,如果未初始化,我会收到错误:

TypeError: $(...).fullCalendar is not a function

我想检查全日历$('#calendar'+curCal)是否已初始化。

1 个答案:

答案 0 :(得分:2)

我不确定它是最好的解决方案,但它完美无缺 - 使用fullcalendar loading回调并设置全局布尔标志,例如:

<script type="text/javascript">
    var globalflag = false;
    $(document).ready(function() {
        $('#calendar').fullCalendar({
            //calendar initialization code
            loading: function (bool) { 
                if (!bool){
                    globalflag = true;
                }
                else{
                    globalflag = false;
                }
            }
        })
    });
</script>

现在您可以查看globalflag状态。

例如,我使用加载回调显示/隐藏进度指示器。