[英]FullCalendar - displaying different info
問題是:
如何顯示(在內部代碼中進行哪些更改)以在周視圖和日視圖中顯示不同的信息,例如:
周視圖-時間,標題
日視圖-時間,標題,說明等。
和備考:月視圖-時間,標題
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”。
希望能幫助到某人:)
在全局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,但是比挖掘日歷的源代碼要好得多。 您必須記住要添加和刪除所有提要,通常您會注意到您的提要開始重復..這意味着某個地方缺少刪除項。
我之前在另一個問題上發布了
查看此鏈接
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}"
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.