我按如下方式调用fullCalendar方法:
<script type="text/javascript">
$(document).ready(function() {
$('#calendar').fullCalendar({
firstDay: 1,
eventLimit: true, // allow "more" link when too many events
events: [{title":"Matthias Klein","start":"01-01-2014","end":"01-01-2015"},{"title":"Matthias Klein","start":"01-01-2014","end":"02-01-2014"},{"title":"Matthias Klein","start":"01-01-2014","end":"01-01-2014"}]
});
});
但结果所有事件在前一天开始和结束时间为2:46a:
我做错了什么?
答案 0 :(得分:2)
很少,
尝试将您的活动的日期格式更改为yyyy-mm-dd我昨晚遇到此问题,我的活动全部在前一天下午4点30分显示,并为我修复了这个问题。
还注意到你的日期没有时间,所以它们是否全日活动?如果是这样,请确保将allDay属性设置为true。
最后一件事,firstDay表示星期几,所以如果星期一是0则星期二是1.这并不意味着该月的第一天。
答案 1 :(得分:0)
另一种解决方法:使用nextDayThreshold参数
$('#calendar').fullCalendar({
**nextDayThreshold**: '00:00:00', // 9am
nextDayThreshold设置它必须呈现的最短时间,就好像它在当天一样呈现。
答案 2 :(得分:0)
我遇到了同样的问题,只能按照demo page ...
上给出的确切日期格式解决它 yyyy-MM-ddTHH:mm:ss
(例如, 2019-05-08T16:00:00 今天是4点)
或
yyyy-MM-dd
(例如,今天是 2019-05-08 )
换句话说,美国日期格式加上24小时制。
不幸的是,nextDayThreshold似乎存在一个错误。如果将其设置为00:00:00(默认值),则此时结束的事件将显示为前一天结束,这与文档相矛盾。此外,跨越一天以上的allDay=true
事件将始终显示为在前一天结束。
这是我的完整代码...
addEvents = [];
addEvents.push({
title: "First Event",
url: "http://localhost:11634/events/141",
start: '2019-05-19T09:00:00',
end: '2019-05-19T13:00:00'});
addEvents.push({
title: "Second Event",
url: "http://localhost:11634/events/137",
start: '2019-11-02',
end: '2019-11-02'});
addEvents.push({
title: "Third, multi-day event",
url: "http://localhost:11634/events/115",
start: '2019-11-08T00:00:00',
end: '2019-11-10T01:00:00'});
document.addEventListener('DOMContentLoaded', function () {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: ['dayGrid'],
events: addEvents
});
calendar.render();
});