Fullcalendar v3.8.0跨日事件显示异常求助:结束时间影响显示天数
解决FullCalendar v3.8.0跨日事件显示异常的问题
嘿,这个问题我太熟悉了!其实是FullCalendar内置的nextDayThreshold配置项在搞鬼~
问题原因
FullCalendar v3.x版本里,nextDayThreshold的默认值是'09:00:00'(也就是早上9点)。这个参数的作用是:只有当事件的结束时间在第二天的这个阈值时间之后,才会被判定为跨日事件,同时显示在开始和结束日期的块中。
你遇到的情况正好对应这个规则:
- 当结束时间是2018-01-17 08:00:00时,早于默认的9点阈值,所以只会显示在16号的日期块里
- 当结束时间是2018-01-17 09:00:00时,刚好等于阈值,就会跨日显示在16号和17号两个块中
解决方法
初始化FullCalendar的时候,把nextDayThreshold设置为'00:00:00'(凌晨0点),这样只要事件的结束时间是第二天的任何时刻,都会被识别为跨日事件,同时显示在两天的日期块里。
代码示例:
$('#calendar').fullCalendar({ // 其他配置项(比如events、header等) nextDayThreshold: '00:00:00', // 调整跨日判定的时间阈值 });
如果你有其他特殊需求,也可以根据实际场景设置其他阈值时间,比如'06:00:00'(早上6点),只要结束时间在这个时间之后,就会跨日显示。
内容的提问来源于stack exchange,提问作者Darius Paul Bacate
相关产品推荐
相关产品推荐

