Accessibility
Install
npm install vanilla-ssr@0.4.0
Import
import { createFocusTrap, RovingTabindex, announceToScreenReader } from 'vanilla-ssr/accessibility';
Focus Trap
모달/드로어 등 오버레이에 키보드 포커스를 가두고, 닫힐 때 복귀시킵니다.
import { createFocusTrap } from 'vanilla-ssr/accessibility'; const trap = createFocusTrap({ container: document.querySelector('[data-component="modal"]') as HTMLElement, initialFocus: '#primary-action', }); // 열기 trap.activate(); // 닫기 trap.deactivate();
Roving Tabindex
수평/수직 목록에서 화살표 키로 초점을 이동시키는 패턴입니다.
import { RovingTabindex } from 'vanilla-ssr/accessibility'; const list = document.querySelector('[role="tablist"]') as HTMLElement; const roving = new RovingTabindex(list, { orientation: 'horizontal' }); // 필요 시 해제 roving.destroy?.();
Announce to Screen Reader
동적 상태 변화를 스크린 리더에 공지합니다.
import { announceToScreenReader } from 'vanilla-ssr/accessibility'; announceToScreenReader('Saved successfully');
Note
- 이전 임포트 경로
vanila-components/client
는 더 이상 권장되지 않습니다. - 접근성 유틸은 프레임워크 독립적이며 SSR/CSR 어디서든 동작합니다.