diff options
Diffstat (limited to 'src/components/ScheduleInteractive.astro')
| -rw-r--r-- | src/components/ScheduleInteractive.astro | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/components/ScheduleInteractive.astro b/src/components/ScheduleInteractive.astro index 6bcbb1c..4e1894b 100644 --- a/src/components/ScheduleInteractive.astro +++ b/src/components/ScheduleInteractive.astro @@ -323,7 +323,10 @@ calendarEl.innerHTML = ` <div class="schedule-cal-header"> <button type="button" class="schedule-cal-nav" data-dir="-1" aria-label="前の月" ${index <= 0 ? 'disabled' : ''}>‹</button> - <div class="schedule-cal-title">${year}年${month}月</div> + <div class="schedule-cal-mid"> + <div class="schedule-cal-title">${year}年${month}月</div> + <button type="button" class="schedule-cal-today" aria-label="今日を選ぶ">今日</button> + </div> <button type="button" class="schedule-cal-nav" data-dir="1" aria-label="次の月" ${index >= months.length - 1 ? 'disabled' : ''}>›</button> </div> <div class="schedule-cal-grid"> @@ -348,6 +351,15 @@ }); }); + calendarEl.querySelectorAll('.schedule-cal-today').forEach((btn) => { + btn.addEventListener('click', () => { + selectedDate = todayKey; + currentMonth = todayMonth; + renderCalendar(); + showDayDetails(selectedDate); + }); + }); + calendarEl.querySelectorAll('.schedule-cal-nav').forEach((btn) => { btn.addEventListener('click', () => { const next = months.indexOf(currentMonth) + Number(btn.dataset.dir); |
