如何在FullCalendar中自定义显示指定小时范围?
解决方案:指定FullCalendar小时显示区间
你遇到的问题是代码中slotMinTime和slotMaxTime的时间值使用了HTML转义的",导致FullCalendar无法正确解析时间参数,因此设置未生效。以下是具体修正方案:
1. 修正时间参数的引号格式
将视图配置里的"替换为JavaScript原生的单/双引号,确保时间字符串能被正确识别:
views:{ resourceTimelineMonth:{ duration: { days:7 }, slotMinTime: "09:00:00", slotMaxTime: "20:00:00", }, resourceTimelineWeek:{ duration: { days:7 }, slotMinTime: "09:00:00", slotMaxTime: "20:00:00", }, resourceTimelineDay:{ duration: { days:1 }, slotMinTime: "09:00:00", slotMaxTime: "19:00:00", text: "Dia", } },
如果是PHP嵌入场景,确保输出的引号不被HTML转义,或直接使用单引号避免嵌套冲突:
// PHP输出示例 slotMinTime: '<?php echo "09:00:00"; ?>',
2. 全局设置优化(可选)
若希望所有时间类视图默认遵循该区间,可将slotMinTime和slotMaxTime放到全局配置中,无需在每个视图重复定义:
calendario1 = new FullCalendar.Calendar(calendarEl, { timeZone: 'local', locale: 'es', // 全局时间区间配置 slotMinTime: "09:00:00", slotMaxTime: "20:00:00", views:{ resourceTimelineDay:{ duration: { days:1 }, // 单独覆盖日视图的结束时间 slotMaxTime: "19:00:00", text: "Dia", } // 其余视图自动继承全局设置 }, // 其余配置项... });
3. 版本兼容性验证
确认使用的FullCalendar Scheduler版本支持slotMinTime和slotMaxTime(Resource Timeline视图从v4版本开始支持该属性),若版本过旧建议升级到稳定版。
内容的提问来源于stack exchange,提问作者Francisco S
相关产品推荐
相关产品推荐

