在FullCalendar上为事件添加日期

时间:2016-07-19 10:33:27

标签: javascript jquery fullcalendar

我的活动以随机颜色显示,但不是这样,我希望得到这样的结果:

fullcalendar

我希望通过它上面的活动为所有日子着色。我已经使用自定义视图和eventRender方法进行了一些研究,但我不知道如何为有事件的所有日子着色。 要更改的简化代码:

$('#calendar').fullCalendar({
    eventRender: function(event, element) {
        // here, event.parent().css("background-color:pink;"); ??
    }
});

1 个答案:

答案 0 :(得分:3)

要为包含事件的单元格(td)的背景颜色着色,您需要找到td并更改其背景颜色。幸运的是,每个td都有data-date,因此请尝试将eventRender更改为

eventRender: function (event, element) {
    var eventStart = moment(event.start);
    var eventEnd = event._end === null ? eventStart : moment(event.end);
    var diffInDays = eventEnd.diff(eventStart, 'days');
    $("td[data-date='" + eventStart.format('YYYY-MM-DD') + "']").css('background-color','pink');
    for(var i = 1; i < diffInDays; i++) {
        eventStart.add(1,'day');
        $("td[data-date='" + eventStart.format('YYYY-MM-DD') + "']").css('background-color','pink');
    }
}

我希望这会有所帮助。