INDEX
FullCalendarについての解説
FullCalendarは、JavaScriptで動作するインタラクティブなカレンダーを簡単に作成できるライブラリです。カレンダー表示を豊富にカスタマイズできるため、スケジュール管理やイベント管理のWebアプリケーションで広く使用されています。さまざまなカレンダー表示形式(週、月、日)や、イベント追加・削除の機能をサポートしています。
FullCalendarの実装方法
FullCalendarを使用するには、以下のCSSとJavaScriptファイルを<head>内に記述して読み込みます。
<link href="https://cdn.jsdelivr.net/npm/fullcalendar@5.11.0/main.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/fullcalendar@5.11.0/main.min.js"></script>
FullCalendarの特徴
特徴 | 説明 |
---|---|
カレンダーの表示形式 | 月、週、日のビューに簡単に切り替えができる。 |
イベントの管理 | イベントを追加・編集・削除する機能を提供。 |
レスポンシブ対応 | モバイル、タブレット、PCに対応したレスポンシブデザイン。 |
外部API連携 | Googleカレンダーなどの外部APIとも簡単に連携が可能。 |
プロパティとその値の一覧表
プロパティ名 | 説明 | 値の例 |
---|---|---|
initialView | カレンダーの初期表示ビューを指定。 | ‘dayGridMonth’, ‘timeGridWeek’, ‘timeGridDay’ |
events | 表示するイベントのリスト。 | 配列形式でイベントオブジェクトを指定。 |
headerToolbar | カレンダー上部のツールバーのボタン配置。 | { left: ‘prev,next’, center: ‘title’, right: ‘dayGridMonth,timeGridWeek’ } |
editable | イベントのドラッグ&ドロップを有効にするか。 | true, false |
月カレンダーを表示する例
実行例
HTMLとJavaScriptコード
<div id="calendar-container">
<div id="calendar"></div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth', // 初期表示は月カレンダー
headerToolbar: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
events: [
{ title: '会議', start: '2024-10-10T10:30:00', end: '2024-10-10T12:30:00' },
{ title: 'プロジェクト締め切り', start: '2024-10-15' },
{ title: '会社のイベント', start: '2024-10-25', end: '2024-10-28' }
]
});
calendar.render();
});
</script>
解説
この例では、FullCalendarを使用して月カレンダーを表示しています。`initialView`に`dayGridMonth`を指定して、月単位での表示を実現しています。
週カレンダーを表示する例
実行例
HTMLとJavaScriptコード
<div id="calendar-container-week">
<div id="calendar-week"></div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
var calendarWeekEl = document.getElementById('calendar-week');
var calendarWeek = new FullCalendar.Calendar(calendarWeekEl, {
initialView: 'timeGridWeek', // 初期表示は週カレンダー
headerToolbar: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
events: [
{ title: 'オンラインミーティング', start: '2024-10-08T09:00:00', end: '2024-10-08T10:00:00' },
{ title: '社内プレゼン', start: '2024-10-12T14:00:00', end: '2024-10-12T15:30:00' }
]
});
calendarWeek.render();
});
</script>
解説
この例では、週ごとのスケジュールを表示しています。`initialView`に`timeGridWeek`を指定することで、週単位での表示が可能になります。
日カレンダーを表示する例
実行例
HTMLとJavaScriptコード
<div id="calendar-container-day">
<div id="calendar-day"></div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
var calendarDayEl = document.getElementById('calendar-day');
var calendarDay = new FullCalendar.Calendar(calendarDayEl, {
initialView: 'timeGridDay', // 初期表示は日カレンダー
headerToolbar: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
events: [
{ title: '1対1ミーティング', start: '2024-10-10T13:00:00', end: '2024-10-10T14:00:00' }
]
});
calendarDay.render();
});
</script>
解説
この例では、日ごとのタイムグリッドを使用して、日ごとのスケジュールを表示しています。`initialView`に`timeGridDay`を指定することで、日単位での表示が可能になります。
FullCalendarの公式サイト
FullCalendar - JavaScript Event Calendar