FullCalendar 2.2.6时区被忽略

时间:2015-01-15 15:30:40

标签: javascript fullcalendar

我尝试使用FullCalendar(http://fullcalendar.io/),除了时区外,一切都很好用。出于某种原因,我无法像在网站上的示例中那样有时间进行更改,而且我无法看到代码中的内容与此处的示例不同:

http://fullcalendar.io/js/fullcalendar-2.2.6/demos/timezones.html

我项目中的代码要复杂得多,所以我尽量尽可能地复制示例,但它仍然无法正常工作:

<body>
    <h1>Calendar:</h1>
    <div class="calendar"></div>
</body>

<script>
    function renderCalendar() {
        $('.calendar').fullCalendar({
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,agendaWeek,agendaDay'
            },
            defaultDate: '2014-11-12',
            timezone: 'Europe\/London',
            editable: true,
            eventLimit: true, // allow "more" link when too many events
            events: [{"title":"All Day Event","start":"2014-11-01"},{"title":"Long Event","start":"2014-11-07","end":"2014-11-10"},{"id":"999","title":"Repeating Event","start":"2014-11-09T16:00:00-05:00"},{"id":"999","title":"Repeating Event","start":"2014-11-16T16:00:00-05:00"},{"title":"Conference","start":"2014-11-11","end":"2014-11-13"},{"title":"Meeting","start":"2014-11-12T10:30:00","end":"2014-11-12T12:30:00"},{"title":"Lunch","start":"2014-11-12T12:00:00-05:00"},{"title":"Meeting","start":"2014-11-12T14:30:00-05:00"},{"title":"Happy Hour","start":"2014-11-12T17:30:00-05:00"},{"title":"Dinner","start":"2014-11-12T20:00:00+00:00"},{"title":"Birthday Party","start":"2014-11-13T07:00:00-05:00"},{"url":"http:\/\/google.com\/","title":"Click for Google","start":"2014-11-28"}],
            loading: function(bool) {
                $('#loading').toggle(bool);
            },
            eventRender: function(event, el) {
                // render the timezone offset below the event title
                if (event.start.hasZone()) {
                    el.find('.fc-title').after(
                    $('<div class="tzo"/>').text(event.start.format('Z'))
                    );
                }
            }
        });
    }
    renderCalendar();
</script>

列出的事件是从FullCalendar.io网站上的示例中提取的确切事件。日历呈现正常,但更改时区参数不会更改事件显示的时间:

将时区设置为&#34;无&#34;显示在事件之下+00:00

将时区设置为&#34; local&#34;显示事件(EST,我的时区)下方-05:00

将时区设置为特定位置(例如,&#34; America / Chicago&#34;)显示事件下方+00:00,无论指定的位置如何

在这些情况中,没有一个是日历上显示的事件发生变化的时间;如果输入的时间是14:00:00,则无论时区设置如何,它都显示为2p。可能有一些显而易见的东西在某处丢失,但我无法看到它。任何帮助将不胜感激。谢谢。

(请注意,这是FullCalendar v2,因此ignoreTimezone参数不存在。)

1 个答案:

答案 0 :(得分:0)

尝试使用时区渲染您的活动 events function

然后在选项中设置您的时区。