Как применить цвет фона события, когда события отображаются во всплывающем окне событий, как показано ниже. В настоящее время я динамически применяю цвет фона внутри вызова eventAfterRender(). Как вы можете видеть, он работает - за исключением случаев, когда события отображаются во всплывающем окне.FullCalendar, применить цвет backgroud события к всплывающему значению события?
var initialize_calendar;
var current_path = window.location.pathname;
initialize_calendar = function(){
$('.calendar').each(function(){
var calendar = $(this)
calendar.fullCalendar({
header: {
left: 'prev, next today',
center: 'title',
right: 'month, agendaWeek, agendaDay'
},
selectable: true,
selectHelper: true,
editable: true,
eventLimit: true,
events: current_path + ".json",
eventAfterRender: function(event, element) {
var current_user = event.current_user_id
var driver = event.driver_id
var date = event.start
var date_format = date.hour() === 0 ? "dddd, MMMM Do YYYY" : "dddd, MMMM Do YYYY, h:mm:ss a"
console.log(date.format(date_format));
// console.log(date.hour())
$(element).popover({
html: true,
trigger: "hover",
container: 'body',
title: event.carpool,
content: '<strong>Event:</strong> ' + event.title + '<br>' +
'<strong>Start:</strong> ' + event.start.format(date_format) + '<br>' +
'<strong>Driver:</strong> ' + event.driver + '<br>' +
'<strong>Place:</strong> ' + event.place + '<br>' +
'<strong>Address:</strong> ' + event.address,
placement:'top'
})
if(current_user === driver) {
element.css('background-color', 'green');
} else {
element.css('background-color', 'blue');
}
}
});
})
};
$(document).on('ready', initialize_calendar);
О, как вы могли бы ожидать - поповер не работает для событий внутри предельного всплывающего окна либо.
Стили и слушатели событий не применяются к событиям внутри предельного события всплывающего окна ...
Для цветной части проблемы - попробуйте раскрасить ее с помощью eventRender вместо eventAfterRender. Кажется, нужно работать - может быть, возникла проблема на странице проекта fullcalendar по этой проблеме? [eventAfterRender fiddle] (https://jsfiddle.net/umwy5srp/) и [скрипт eventRender] (https://jsfiddle.net/umwy5srp/1/) Поппер может быть исправлен, перемещая его в eventRender, а не Попробуй это. – smcd
красота, eventRender делает трюк. – matthewalexander
из любопытства, почему бы не назначить цвет самому событию и позволить fullCalendar обрабатывать его (используя свойство event.color) вместо того, чтобы возиться с CSS? – K48