달력 UI 상단 요일, 이벤트, 날짜 텍스트에 스크린리더 초점 접근되지 않음
함수 | 호출시점 |
---|---|
viewDidMount | fullcalendar 달력 UI(월, 주, 일 등)가 완전히 렌더링된 후 호출 (최초 1회만 호출) |
eventDidMount | 각 이벤트가 달력 UI에 렌더링될 때마다 호출 |
dayCellDidMount | 달력 UI 내 날짜 셀이 렌더링될 때마다 호출 |
var clndObj = new FullCalendar.Calendar(clndEl, {
...
viewDidMount: function() {
// 요일 영역 <a> href 속성 추가
var headerEls = document.querySelectorAll('.fc-col-header-cell a');
headerEls.forEach(function(el) {
el.setAttribute('href', 'javascript:void(0);');
});
},
eventDidMount: function(eventInfo) {
// 이벤트 영역 <a> role "button" 속성 추가
var eventEl = eventInfo.el;
eventEl.setAttribute('role', 'button');
},
dayCellDidMount: function(dayCellInfo) {
// 날짜 영역 <a> role 및 aria-current 속성 추가
var dayCellEl = dayCellInfo.el;
dayCellEl.setAttribute('role', 'button');
// 오늘 날짜만 aria-current 속성 추가
if (DateUtils.getToday() === dayCellInfo.date) {
dayCellEl.setAttribute('aria-current', 'date');
}
},
clndObj.render();
});