Поиск клавиатурных ловушек
Находите места, где фокус застревает и не может выйти
«Поиск клавиатурных ловушек» — бесплатный урок Web Accessibility Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Web Accessibility Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Web Accessibility Academy содержит 4 уроков всего.
Зашли в тупик и не можете выйти
Клавиатурная ловушка — это любое место, куда фокус может попасть, но из которого нельзя выйти с помощью клавиатуры. Для пользователя без мыши это тупик. 🪤
Почему это настолько серьёзно
Пользователю в ловушке может потребоваться перезагрузить всю страницу, чтобы выбраться. WCAG считает ловушку без выхода нарушением, а не мелкой ошибкой.
Классические виновники
Ловушки часто встречаются в сложных виджетах: пользовательских календарях, встроенных редакторах и сторонних плагинах, которые захватывают фокус и не возвращают его.
Сломанное модальное окно
Диалоговое окно, перехватывающее Tab и не предлагающее способа выйти, — самая распространённая ловушка. Настоящее модальное окно должно закрываться по клавише Escape.
Iframes могут поглотить фокус
Встроенное содержимое, например видео или карта, находится в iframe. Некоторые такие элементы захватывают фокус и оставляют пользователя внутри без выхода.
Неправильные обработчики событий
Скрипт, вызывающий preventDefault для клавиши Tab, может заблокировать обычное перемещение браузера. Внезапно фокус просто перестаёт продвигаться.
el.addEventListener('keydown', e => e.preventDefault());Односторонняя ловушка
Некоторые ловушки позволяют Tab перемещаться вперёд, но блокируют Shift+Tab. Проверяйте оба направления, поскольку односторонний маршрут всё равно остаётся ловушкой.
Намеренная фиксация фокуса допустима
Удерживать фокус внутри открытого модального окна специально и правильно. Правило заключается в том, что всегда должен быть понятный выход, например Escape или кнопка закрытия.
Как их находить
Проверка проста и эффективна. Пройдите с помощью Tab всю страницу, используя только клавиатуру, и ни разу не обращайтесь к мыши, чтобы выбраться.
Характерный признак
Если фокус продолжает перемещаться по кругу внутри одного компонента, а Tab не переводит его дальше, Вы нашли ловушку. Точно запишите, где она Вас остановила.
Исправьте путь выхода
Исправление заключается в восстановлении выхода: позвольте Tab продолжить движение, обрабатывайте Escape, а при закрытии возвращайте фокус к элементу, открывшему этот слой.
Быстрая проверка
Определите, что именно характеризует клавиатурную ловушку.
Итоги: обнаружение ловушек
Ловушка удерживает фокус и не оставляет выхода с клавиатуры, что нарушает требования WCAG. Проходите всё с помощью Tab в обоих направлениях и всегда предоставляйте путь выхода. ✅
Часто задаваемые вопросы
Урок «Поиск клавиатурных ловушек» бесплатный?
Да — полный текст урока «Поиск клавиатурных ловушек» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Web Accessibility Academy, подпишись на CoddyKit PRO. Курс Web Accessibility Academy содержит 4 уроков всего.
Чему я научусь в уроке «Поиск клавиатурных ловушек»?
Находите места, где фокус застревает и не может выйти Ты практикуешь Web Accessibility Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Web Accessibility Academy?
Предыдущий опыт не требуется. Web Accessibility Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Поиск клавиатурных ловушек»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Web Accessibility Academy?
Да. Каждый урок Web Accessibility Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Tab, Shift+Tab, Enter, Space: основные клавиши
- Видимый фокус: никогда не скрывайте контур
- Логичный порядок Tab следует за содержимым
- Поиск клавиатурных ловушек