删除当前月份的过去日期和下个月日期
是否可以从完整日历中删除过去的日期和下个月的日期? 因此,对于当前月份,它应仅显示当前日期和日期。
您可以尝试在eventRender()方法中跳过事件:
eventRender: function(event, element, view) { if(event.start.getMonth() !== view.start.getMonth()) { return false; } }
下个月和上个月的网格单元格具有“fc-other-month”类,因此您可以通过以下方式定位它们:
例如:隐藏日期编号,添加CSS:
.fc-other-month .fc-day-number { display:none;}
或运行此JavaScript:
$(".fc-other-month .fc-day-number").hide()
试试这个!
$('.fc-other-month').html('');
这适合我!
此答案中提供的解决方案均未正确解决当前版本的FullCalendar问题。 以Bascht的答案为出发点,我更新了他使用当前FullCalendar API的方法。 下面是完成此任务的工作示例代码:
eventRender: function (event, element) { var eventDate = event.start; var calendarDate = $('#activitiesCalendar').fullCalendar('getDate'); if (eventDate.get('month') !== calendarDate.get('month')) { return false; } }
eventRender: function (event, element, view) { var currentMon = new Date(event.start); var currentMonth = currentMon.getMonth(); var currentMonViewStart = new Date(view.start); var currentMonthViewStart = currentMon.getMonth(); var currentMonViewEnd = new Date(view.end); var currentMonthViewEnd = currentMonViewEnd.getMonth(); if((currentMonth == currentMonthViewStart) && (currentMonth == currentMonthViewEnd)){ return false; } }
对于2.0或更高版本:
eventRender: function (event, element, view) { if(event.start._d.getMonth() !== $('calendar').fullCalendar('getDate')._d.getMonth()) { return false; } } // if you want to remove other month's days from view add to css: .fcc-other-month { visibility:hidden; }
尝试使用weekMode: http ://fullcalendar.io/docs/display/weekMode/。
weekMode: 'liquid', or `weekMode: 'variable',`
希望能帮助到你
对于较新版本的FullCalendar插件,以下工作使用Moment.js帮助函数:
eventRender: function(event, element, view){ var evStart = moment(view.intervalStart).subtract(1, 'days'); var evEnd = moment(view.intervalEnd).subtract(1, 'days'); if (!event.start.isAfter(evStart) || event.start.isAfter(evEnd)) { return false; } },
添加此设置showNonCurrentDates: false
。 使用此设置,将不会显示不属于当前月份的日期和事件。
$('#calendarLoansByRequestDate').fullCalendar({ // Other settings showNonCurrentDates: false });
对于我使用的最新版本:
eventRender: function(event,element,view) { var view_title = view.title; var event_title = event.start; var event_title2 = moment(event_title).format('MMMM YYYY'); if(event_title2 !== view_title) { return false; } else { var idname = 'event' + event.id; $(element).attr('id', idname).addClass('ttLT').attr('title', event.title); var mytitle = event.title; if (mytitle.toLowerCase().indexOf("open timeslot") >= 0) { $(element).addClass('alert').addClass('alert-success'); } else{ $(element).addClass('alert').addClass('alert-info'); $(element).find('.fc-event-title').addClass('capitalize'); $(element).find('.fc-event-inner').addClass('capitalize'); } element.qtip({ content: event.description, style:{classes:'qtip-bootstrap'}, position:{my:'bottom right',at:'top left'} }); } }
使用事件渲染和回调函数解决了我的问题。完全隐藏当前视图中的上个月和下个月的事件
eventRender: function(event, element, view) { if (view.name == "month") { if (event.start._i.split("-")[1] != getMonthFromString(view.title.split(" ")[0])) { return false; } } } function getMonthFromString(mon) { var d = Date.parse(mon + "1, 2016"); if (!isNaN(d)) return new Date(d).getMonth() + 1; return -1; }
希望能帮助到你
这对我的3.6.1版本有用
eventRender: function(event, element, view) { if(!event.start.isBetween(view.intervalStart, view.intervalEnd)) { return false; } }
你可以试试这个clientOptions’showNonCurrentDates 'showNonCurrentDates' => false, and 'fixedWeekCount' => false,
此代码允许我隐藏前几个月和下个月的日期,但仍然存在的细胞:尝试使用Fullcalendar Doc
= $JSCode = << '; element.append(new_description); } } EOF; yii2fullcalendar\yii2fullcalendar::widget([ 'id' => 'calendar', 'options' => [ 'lang' => 'en', 'header' => [ 'left' => 'prev,next today', 'center' => 'title', 'right' => 'month,agendaWeek,agendaDay' ], ], 'clientOptions' => [ 'height' => 750, 'showNonCurrentDates' => false, 'language' => 'en', 'eventLimit' => true, 'selectable' => true, 'selectHelper' => true, 'droppable' => false, 'editable' => false, 'fixedWeekCount' => false, 'defaultDate' => date('Ym-d'), 'eventRender' => new JsExpression($JSCode), ], 'events' => Url::to(['/user/myattr/jsoncalendar']) ]); ?>
$('.fc-other-month').html('');
并禁用其他月份:
$(".fc-other-month").addClass('fc-state-disabled');
- IE 11中没有填充完整日历调度程序中的资源数组
- 从服务中获取时,不会更新angular2 fullcalender事件。 HTTP
- FullCalendar – JSON源不起作用,但直接使用JSON数据
- fullCalendarjs方法fullCalendar(’clientEvents’)返回重复事件
- 如何在不剪切日历事件的主题的情况下显示它 – 使用FullCalendar UI
- FullCalendar限制事件数量并具有更多链接
- 如何从FullCalendar中删除此事件?
- 为什么Uncaught TypeError:$(…)。fulllCalendar不是函数?
- jQuery fullcalendar:contextmenu