如何使用arshaw fullcalendar v2.3.0在agendaDay视图中灰显非工作日
我使用的是最新版本的arshaw fullcalendar(版本2.3.0),并且有一个日历需要显示活动工作日和小时的方案。
我用这个做了这个:
businessHours: { start: '08:00', end: '17:00', dow: [2,3,4,5,6,0] // Monday is not a working day },
在“议程周刊”视图中,它清楚地显示了非工作日“灰色”的工作日。 就我而言,星期一
但是,当我进入agendaDay视图时,星期一,没有定义为工作日显示没有灰色的部分,整个一天是白色的,使它看起来像一个工作日。
如果当天没有指定为工作日,那么在agendaDay视图中的整天不应该显示为灰色吗?
参考: http : //fullcalendar.io/docs/display/businessHours/
我认为这是一个错误,但我创建了一个解决方法。 当fullcalendar位于agendaDay视图中且当前日期不在DateOfWeek数组中时,它会创建后台事件。
$('#calendar').fullCalendar({ businessHours: { start: '08:00', end: '17:00', dow: [0, 2, 3, 4, 5, 6] }, viewRender: function (view, e) { var bh = view.options.businessHours, startDate = view.start; if (view.type === "agendaDay" && bh.dow.indexOf(startDate.day()) === -1) { $('#calendar').fullCalendar('renderEvent', { start: moment(startDate), end: moment(view.end), rendering: 'background', className: 'fc-nonbusiness' }, false); $('#calendar').fullCalendar('renderEvent', { start: moment(startDate), allDay: true, rendering: 'background', className: 'fc-nonbusiness' }, false); } } });
有一些事情可以改进:
- 选择器
$('#calendar')
可以是通用的。 - 当您多次访问该日期时,
.fullCalendar('renderEvent',
将追加多个背景事件。
的jsfiddle
- 外部触发FullCalendar的’dayClick’方法?
- jquery完整日历:为前端的每个事件设置不同的颜色
- Fullcalendar事件丢弃和ajax
- FullCalendar – JSON源不起作用,但直接使用JSON数据
- 单击jQuery中的事件并单击鼠标右键
- 使用emberjs didInsertElement显示两个单独的日历或两个实例jquery fullcalendar插件对象
- 使用Fullcalendar在工具提示中显示Google日历事件描述字段
- 如何在FullCalendar中的agendaWeek视图中确定开始日期和结束日期?
- 如何让Adam Shaw的FullCalendar在rails 4 app中显示响应