aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/components/ScheduleInteractive.astro
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/ScheduleInteractive.astro')
-rw-r--r--src/components/ScheduleInteractive.astro14
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);