Для ширины мы сделали календарь гибким, чтобы его можно было настраивать вместе с адаптивным дизайном, и он довольно хорошо работал на больших дисплеях:
#calendar {
width: 100%;
margin: 0 auto;
}
Для любых других настроек (изменение высоты или вида по умолчанию),используйте встроенное событие windowResize
для FullCalendar.Недостатком принятого ответа является то, что функция будет работать, пока размер окна изменяется при каждом изменении пикселя.И наоборот, событие windowResize
запускается ПОСЛЕ того, как изменение размера завершено.
Теперь проблема с адаптивным календарем состоит в том, что вы все еще находитесь во власти стола - ужасное место, чтобы находиться на маленьком мобильномscreen.
Для нашего проекта мы выбираем принудительное отображение дня, если пользователь находился на экране размером менее 769 пикселей.Вы можете увидеть наш метод в этом примере.Если он не работает для вас, по крайней мере, он даст вам некоторое представление о том, как реализовать решение, которое работает.
$(function(){
var $calendar = $('#calendar');
$calendar.fullCalendar({
windowResize: function() {
var ww = $(window).width();
var view = (ww <= 768) ? 'basicDay' : 'month';
var currentView = $('#calendar').fullCalendar('getView');
if(view != currentView){
$calendar.fullCalendar('changeView',view);
}
if(ww <= 768){
$calendar.find('.fc-header-right .fc-button').hide();
}else{
$calendar.find('.fc-header-right .fc-button').show();
}
}
});
});