是否可以显示两三个月?

问题描述:

是否可以显示两个/三个月?是否可以显示两三个月?

FullCalendar的文档应该可以帮助你回答这个问题(这是有据可查的,顺便说一句)。我发现this快速搜索您的答案。

编辑:进一步挖掘一点,我发现this以及其中注意到它不是一个主要功能,但有一些事情,你可以做,以模仿你想要的。

+0

在此先感谢。 这个问题199建议我创建3个日历,但我不确定如果将事件从Month1(calendar1)拖动到Month3(calendar3),我不确定它会工作。 我会检查它。不管怎么说,还是要谢谢你。 – 2010-08-03 16:57:52

+0

我非常有信心(没有使用它),你不能这样做,除非你感觉冒险,并且想要修改库来做到这一点。不要忘记接受答案:)。 – rickp 2010-08-03 17:09:55

@ John Smith - 我创建了3个日历,迄今为止它似乎在为我工作,但不是拖动事件,地雷只是简单地保存事件标题,开始和结束以及编辑它们的能力。

即使我想要一样,做了这样的事情。

<table width="100%" cellpadding="5" cellspacing="5"> <tr> <td> &nbsp; </td> <td> <input type="button" id="myprevbutton" value="&nbsp;&#9668;&nbsp;" />&nbsp; <input type="button" id="mynextbutton" value="&nbsp;&#9658;&nbsp;" />&nbsp; </td> <td> &nbsp; </td> </tr> <tr> <td width="33%"> <div id='calendar0'> </div> </td> <td width="33%"> <div id='calendar1'> </div> </td> <td width="33%"> <div id='calendar2'> </div> </td> </tr> </table>

和JS

$(document).ready(function() { 

    var date = new Date(); 

    var d = date.getDate(); 
    var m = date.getMonth(); 
    var y = date.getFullYear(); 

    $('#calendar0').fullCalendar({ 
    header: { 
      left: '', 
      center: 'title', 
      right: '' 
     }, 
    month:m-1, 
    theme: true, 
    }); 
    $('#calendar2').fullCalendar({ 
    header: { 
      left: '', 
      center: 'title', 
      right: '' 
     }, 
    month:m+1, 
    theme: true, 
    }); 
    $('#calendar1').fullCalendar({ 
     header: { 
      left: '', 
      center: 'title', 
      right: '' 
     }, 
    theme: true, 
    editable: false, 
    }); 

    $('#myprevbutton').click(function() { 
     $('#calendar0').fullCalendar('prev'); 
     $('#calendar1').fullCalendar('prev'); 
     $('#calendar2').fullCalendar('prev'); 
    }); 
    $('#mynextbutton').click(function() { 
     $('#calendar0').fullCalendar('next'); 
     $('#calendar1').fullCalendar('next'); 
     $('#calendar2').fullCalendar('next'); 
    }); 



}); 

TL; DR
Cannon has posted a modified FullCalendar允许日历跨越超过一个月的跨越,但是这似乎运行所有月份成海誓山盟,并且绑定到FullCalendar的早期版本。

这里是我采取3个单独的日历,它隐藏在两个日历导航和同步主日历月:jsFiddle

详细

设置了3个日历 - 在我的情况下,主日历与下一个和前几个月较小的'看后面/向前看'日历:

<div id='calendarPrev' style='width:50%'></div> 
<div id='calendarCurrent' style='width:100%'></div> 
<div id='calendarNext' style='width:50%'></div> 

DRY向上日历初始化一个函数任选隐藏导航:

function initCalendar($calendarDiv, displayDate, isMain) { 
    $calendarDiv.fullCalendar({ 
     defaultDate: displayDate, 
     header: { 
      left: 'title', 
      center: '', 
      right: isMain 
       ? 'today prev,next' 
       : '' 
     }, 
     events: ... eventdata callbacks etc 
    }); 
} 

$(document).ready,设置今天围绕3个日历的初始日,但除了正好1个月,隐藏在两个辅助日历导航。在“主”日历nextprev按钮再用铁丝附加的事件处理程序,其保持在3个日历保持同步:

$(document).ready(function() { 
    initCalendar($('#calendarCurrent'), moment(), true); 
    initCalendar($('#calendarPrev'), moment().subtract(1, 'months'), false); 
    initCalendar($('#calendarNext'), moment().add(1, 'months'), false); 

    $('body').on('click', 'button.fc-prev-button', function() { 
     $('#calendarPrev').fullCalendar('prev'); 
     $('#calendarNext').fullCalendar('prev'); 
     // allow main calendar event to propogate 
    }); 

    $('body').on('click', 'button.fc-next-button', function() { 
     $('#calendarPrev').fullCalendar('next'); 
     $('#calendarNext').fullCalendar('next'); 
     // allow main calendar event to propogate 
    }); 
} 

添加到第一,第二和第三个月:

defaultDate:'2016-07-01', 
+0

请解释这将如何帮助 – jlapoutre 2016-08-03 19:16:33

一种替代方法可以在basicWeek视图中显示所需的周数。它呈现为显示2个月的标签。

$('#calendar').fullCalendar({ 

    header: { 
     left: 'prev,next today', 
     center: 'title', 
     right: 'month,basicWeek,basicDay' 
    }, 
    views: { 
     basicWeek: { 
      type: 'basic', 
      duration: {weeks: 8}, 
      rows: 8 
     } 
    } 
}