0

由于某种原因,fullcalendar 不会在 basicDay 视图中显示晚上 7 点之后发生的任何事件。事件显示在月视图中,但不在 basicDay 视图中。

任何想法将不胜感激。

这是我的代码。我在同一页面上有两个日历。第一个是月视图,第二个是基本日视图。

  $(document).ready(function() {

  // page is now ready, initialize the calendar...

  $('#calendar').fullCalendar({
   weekMode:'variable',
   events: $.fullCalendar.gcalFeed(
    "http://www.google.com/calendar/feeds/google_account/public/basic"
   ),
   eventClick: function(event) {
    if (event.url) {
     window.open(event.url,"_blank","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=750, height=450");
     return false;
    }
   }
  });

  $('#calendar_min').fullCalendar({
   height:193,
   header:false,
      defaultView: 'basicDay',
   events: $.fullCalendar.gcalFeed(
    "http://www.google.com/calendar/feeds/google_account/public/basic"
   ),
   eventClick: function(event) {
    if (event.url) {
     window.open(event.url,"_blank","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=750, height=450");
     return false;
    }
   }
  });
 });
4

3 回答 3

1

这是因为您位于 EST。创建新事件时,时间是格林威治标准时间上午 12:00,因此 -5 小时 = 晚上 7 点。您可能想在http://arshaw.com/fullcalendar/docs/event_data/上查看使用 ignoreTimezone

于 2010-11-21T04:18:34.657 回答
0

我有一个类似的问题。Google 日历时区是 EDT,并且显示中缺少最后 4 小时的事件。

我更改了 fullcalendar.js(第 849 行)中的 fetchAndRenderEvents() 以解决此问题。

它是:

function fetchAndRenderEvents() {
        fetchEvents(currentView.start, currentView.end);
            // ... will call reportEvents
            // ... which will call renderEvents
    }

我在 currentView.end 中添加了一天

function fetchAndRenderEvents() {
    // Add 1 day to end to ensure all events are fetched  when the time zone is applied.
    fetchEvents(currentView.start, currentView.end.add(1, 'days'));
        // ... will call reportEvents
        // ... which will call renderEvents
}
于 2014-10-25T04:41:40.900 回答
0

你遇到了什么错误?当我在晚上 7 点之后用活动替换您的 google 提要时,它显示正常。(虽然你的例子有一个额外的)}; 需要删除。

       $('#calendar_min').fullCalendar({
            height: 193,
            header: false,
            defaultView: 'basicDay',
            events: [
            {
                title: 'Day',
                start: new Date(y, m, d, 20),
                end: new Date(y, m, d, 21),
                description: 'long description3',
                id: 2
            }],
            eventClick: function(event) {
                if (event.url) {
                    window.open(event.url, "_blank", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=750, height=450");
                    return false;
                }
            }
        });
于 2010-08-24T11:04:21.313 回答