keyboard-navigation

Solid

Keyboard accessibility, focus management, and shortcuts.

AI & Automation 814 stars 53 forks Updated today MIT

Install

View on GitHub

Quality Score: 93/100

Stars 20%
97
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
62
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Keyboard Navigation Skill Expert assistance for keyboard accessibility. ## Capabilities - Implement keyboard navigation - Manage focus - Create keyboard shortcuts - Handle focus trapping - Test keyboard access ## Focus Management ```tsx // Focus trap for modals function useFocusTrap(ref: RefObject<HTMLElement>) { useEffect(() => { const element = ref.current; if (!element) return; const focusableElements = element.querySelectorAll( 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])' ); const first = focusableElements[0]; const last = focusableElements[focusableElements.length - 1]; function handleKeyDown(e: KeyboardEvent) { if (e.key === 'Tab') { if (e.shiftKey && document.activeElement === first) { e.preventDefault(); last.focus(); } else if (!e.shiftKey && document.activeElement === last) { e.preventDefault(); first.focus(); } } } element.addEventListener('keydown', handleKeyDown); return () => element.removeEventListener('keydown', handleKeyDown); }, [ref]); } ``` ## Target Processes - keyboard-accessibility - focus-management - accessibility-implementation

Details

Author
a5c-ai
Repository
a5c-ai/babysitter
Created
4 months ago
Last Updated
today
Language
JavaScript
License
MIT

Related Skills