【发布时间】:2014-08-01 18:22:22
【问题描述】:
我在 http://arshaw.com/fullcalendar/ 使用 FullCalendar。
我正在使用 PHP 构建一个events: [] 列表:
<?php
$dbh = new PDO('mysql:host=localhost;dbname=calendar', 'user', 'pass');
$stmt = $dbh->prepare("SELECT * FROM holidays");
$stmt->execute();
$return_array = array();
$event_array;
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$event_array = array();
$event_array['id'] = $row['id'];
$event_array['title'] = $row['id'] . " - " . $row['forename'] . " " . $row['surname'];
$event_array['start'] = $row['start'];
$event_array['end'] = $row['end'];
$event_array['allDay'] = true;
// what I want to be able to do
if ($row['department'] == 'UK') { $event_array['color'] = '#000000'; };
if ($row['department'] == 'US') { $event_array['color'] = '#000000'; };
else { $event_array['color'] = '#000000'; };
array_push($return_array, $event_array);
}
echo json_encode($return_array);
?>
我想知道是否可以为数组中的每个单独事件着色。我在http://arshaw.com/fullcalendar/docs/event_data/events_array/ 看到可以设置颜色,但这些颜色是在整个eventSources: [] 上设置的,而不是可以在同一eventSource 中更改每个事件的颜色。
可以这样做吗?
【问题讨论】:
-
事件也支持使用
className,对事件应用类,使用CSS -
也许,正如 MLeFevre 所建议的,在需要的地方使用 jQuery.addClass() 原型和切换类?
-
您还可以通过使用
className而不是它们的color值来完成更多工作,例如i.imgur.com/lDH5R2k.png -
@MLeFevre 你能提供一个例子作为答案吗?
-
@user3838132 您已经创建了一个事件数组,但没有将
className分配给其中任何一个。如果您添加另一行,例如$event_array['className'] = 'amazing_event';,那么像.amazing_event { background-color:purple;}这样的 css 规则会起作用吗?
标签: javascript jquery fullcalendar