在 FullCalendar 的月视图中,有没有办法隐藏事件的开始时间?
13 回答
只需添加到日历选项
displayEventTime: false
add the following style to your css
.fc-event-time{
display : none;
}
or in version 2+:
.fc-time{
display : none;
}
试试这个,它对我有用:
$('#calendar').fullCalendar({
displayEventTime : false
});
那应该隐藏标题事件中的开始时间。
要将它们全部隐藏,以下应该有效
$('#calendar').fullCalendar({
displayEventTime : false
});
但是,如果您(像我一样)试图隐藏特定事件的时间,我会找到非常干净的方法。
只需创建以下 CSS 类并在事件属性“className”中引用它:
.hideCalendarTime > div > span.fc-time{
display:none;
}
您的活动应如下所示:
var newEvent = new Object();
newEvent.title = "Something";
newEvent.start = new Date();
newEvent.allDay = false;
newEvent.className = "hideCalendarTime";
以下仅在月视图中隐藏日期:
.fc-view-month .fc-event-time{
display : none;
}
另一种方法是添加一个 eventRender 函数。这样,您可以选择不呈现时间,并执行其他操作,例如将一些数据附加到事件中。
eventRender: function(event, element) {
element.find('.fc-event-title').append("<br/>" + event.location);
element.find('.fc-event-time').hide();
}
提醒 CSS 类名已更改为
.fc-time {
display:none;
}
如果您完全想删除开始时间,可以使用以下代码
$('#calendar-canvas').fullCalendar({
header: {
left: 'today prev,next title',
right: 'agendaDay,agendaWeek,month'
},
firstDay: 1,
eventRender: function(event, element) {
$(element).find(".fc-event-time").remove();
}
});
我知道你问这个问题已经三个月了。但是,如果您和我都在尝试做同样的事情,那么其他人可能正在寻找答案。
在 fullcalendar.js 文件中,注释第 1603 行:
htmlEscape(formatDates(event.start, event.end, view.option('timeFormat'), options)) +
这不是一个修复,充其量是一个黑客,但它有效。
According to http://fullcalendar.io/docs/text/timeFormat/ , you just need to set time format in fullCalendar settings:
$('#calendar').fullCalendar({
events: [
],
timeFormat: ' '
});
尽管@Riz 在发布时是正确的,但 css 在最近的版本中发生了变化,现在您需要以下内容。
.fc-day-grid-event .fc-time{
display:none;
}
.fc-time-grid-event.fc-short .fc-time,.fc-time-grid-event .fc-time{
display: none !important;
}
上面的代码将在所有视图中更正它。
下面的代码有一个在事件的大视图中显示时间的流程
.fc-time-grid-event.fc-short .fc-time{
display: none !important;
}
请在 css 中使用此代码仅对事件隐藏时间。
只使用
.fc-time{
display: none !important;
}
还将隐藏左侧网格中的时间。
只需allDay: false,
从您的 fullCalendar 功能中删除