问题是:
如何显示(代码内部更改内容)以在周视图和日视图f.ex中显示不同的信息:
周视图 - 时间,标题
日视图 - 时间,标题,描述等。
和形式:月视图 - 时间,标题
答案 0 :(得分:3)
ppumkin的解决方案可能有用,但它非常hacky,所以我想,我会发布更好的一个:
$("#calendar").fullCalendar({
events: [
{
start: "2010-01-05",
end: "2010-01-07",
title: "event info",
advancedTitle: "advanced event info"
}
],
eventRender: function(event, element, view){
if(view.name == "agendaDay")
{
event.title = event.advancedTitle;
}
}
});
在事件对象中,您可以指定非标准字段,例如“advancedTitle”,其中包含高级事件信息。 然后在eventRender回调函数中,您可以轻松地将标题切换为所需视图的“advancedTitle”。
希望,这有助于某人:)
答案 1 :(得分:2)
在全球JS声明中,
var currentView;
在fullCalendar的构造函数中有viewDisplay触发器,使用此代码。
viewDisplay: function(view) {
//This is very ugly way to change events on switch... but it works!
//Every time you you use 'gotoDate' this will trigger, also pressing next, previous
if (view.name != currentView) {
if ( view.name == 'basicWeek' )
{
$('#myDateSelector').hide();
$('#calendar').fullCalendar( 'removeEventSource', 'json_day.php' );
$('#calendar').fullCalendar( 'addEventSource', 'json_week.php' );
console.log("week");
}
if (view.name == 'basicDay' )
{
$('#myDateSelector').show();
$('#calendar').fullCalendar( 'removeEventSource', 'json_week.php' );
$('#calendar').fullCalendar( 'addEventSource', 'json_day.php' );
console.log("day");
}
//You can use it some where else to know what view is active quickly
currentView = view.name;
}
},
代码非常hacky,但它比挖掘日历的源代码要好得多。您必须记住添加和删除任何Feed,通常您会注意到您的Feed开始重复..这意味着某处删除了删除。
答案 2 :(得分:0)
我之前在另一个问题上发布了这个
查看此链接
http://arshaw.com/fullcalendar/docs/text/titleFormat/
您可以通过此
指定要编辑的视图http://arshaw.com/fullcalendar/docs/views/View_Option_Hash/
所以你可能会有类似的东西
titleFormat: {
day: 'dddd, d MMM, yyyy' //whatever date format you want here
month: 'MMMM yyyy',
week: "MMM d[ yyyy]{ '—'[ MMM] d yyyy}"
}