、我々は、応答性のデザインと一緒に調整するために、カレンダーが柔軟に、そして、それは、より大きなディスプレイ上で非常によく働いた:(高さまたはデフォルトビューを変更する)他のカスタマイズについては
#calendar {
width: 100%;
margin: 0 auto;
}
、使用FullCalendarの組み込みwindowResize
イベント。受け入れられた答えの欠点は、ピクセルが変更されるたびにウィンドウがサイズ変更されている間、関数が実行されることです。逆に、windowResize
イベントは、サイズ変更が完了した後に発生します。
ここで、レスポンシブなカレンダーの問題は、あなたがまだテーブルの慈悲を受けていることです。小さなモバイル画面には恐ろしい場所です。
私たちのプロジェクトでは、ユーザーが769pxより小さい画面にいる場合は、強制的に日表示を選択します。この例では、私たちのメソッドを見ることができます。それがあなたのために働かない場合、少なくともそれはあなたに解決策を実装する方法のいくつかの方向を与えるでしょう。ここで
var ww,view;
$(function(){
$('#calendar').fullCalendar({
windowResize: function(view) {
ww = getWindowWidth();
view = getView();
var currentView = $('#calendar').fullCalendar('getView');
if(view != currentView){
$('#calendar').fullCalendar('changeView',view);
}
if(ww <= 768){
$('.fc-header-right .fc-button').hide();
}else{
$('.fc-header-right .fc-button').show();
}
}
});
});
上で参照関数です:
function getWindowWidth(){
return $(window).width();
}
function getView(){
return (ww <= 768) ? 'basicDay' : 'month';
}
パーフェクト。お手伝いありがとう! p.s.私はあなたが追加の '})を逃したと信じています; ..しかし、すべてが良い! – captainrad