1

我正在尝试自定义全日历事件。只有一个事件源,我的事件对象如下所示:

{ id = 1, title = "XYZ Apple", start = "2013-10-02", end = "2013-10-06", allDay = true, userId = "abc" }

我想要实现的是基于用户 ID 我想定义事件的颜色。颜色的选择无关紧要,可以是随机的,用户的数量是动态的,例如 UserId "abc" 的所有事件显示为黑色 UserId "xyz" 的所有事件显示为红色等

另外,如果我可以通过具有多个资源的事件源定义为:对于“abc”-不同的事件源对于“xyz”-不同的事件源,我正在寻找建议。

用户是动态的。

有什么建议么:

这就是我的日历的样子

var calendar = {
    header: {
        left: 'prev,next',
        center: 'title',
        right: 'today, basicDay,basicWeek,month'
    },
    defaultView: 'month',
    buttonText: {
        today: 'Today',
        day: 'Day',
        week: 'Week',
        month: 'Month',
        prev: 'Prev', 
        next: 'Next', 

    },
    weekends: true, 
    editable: true,
    events: {
        ignoreTimezone: true,
        url: 'GetEvents',                              
        error: function () {
            alert('GetEvent Call Failed!');
        }
    }
};

myCalendar.fullCalendar(calendar);
4

1 回答 1

0

您可以通过将eventBackgroundColor参数传递给每个事件(事件对象文档)来自定义事件颜色。


为了生成颜色,您需要“种子随机颜色”。这里有一个(Javascript),我也使用了这个 Ruby 方法:

def random_hex(integer)
  srand integer
  (rand * 100000000).to_i.to_s(16)[0..5]
end

您将使用用户 ID 为其播种。这个概念在其他语言中应该是相似的。

于 2013-10-03T20:36:31.423 回答