Считаются ли диалоговые окна браузера доступными по стандартам WCAG A/AA? Диалоговые окна, о которых я говорю, являются нативными для браузера, например в Chrome:
Доступны ли диалоговые окна браузера?
Ответы (2)
Существует 3 различных руководства от W3C/WAI (Инициатива по обеспечению доступности веб-сайтов):
- WCAG 2.0 для веб-контента
- ATAG для Authoring Tool (tl;dr CMS)
- UAAG для пользовательских агентов (tl;dr графический веб-интерфейс браузеры и многие другие, такие как сайты, которые будут вставлять контент — рекламу, видео, прогноз погоды и т. д.)
Соответствующим руководством для диалоговых окон браузера является UAAG, например, «открывает ли UA доступный веб-контент и доступны ли его собственные элементы управления - мышь, сенсорный ввод и клавиатура, хорошо взаимодействующие с API специальных возможностей ОС».
Следование ATAG позволяет человеку с ограниченными возможностями создавать контент на своем собственном веб-сайте в качестве администратора, автора контента, переводчика и т. д. Веб-сайт может быть доступен для посетителей, но бэк-офис/администратор также должен быть доступен для сотрудников, производителей контента и т. д.
И, наконец, есть также WAI-ARIA для доступных многофункциональных интернет-приложений для многофункциональных виджетов, веб-приложений, что бы это ни значило. tl;dr следует использовать как дополнение к HTML5.
Диалоговое окно браузера доступно, если ваш браузер соответствует требованиям UAAG, что должно быть в случае с самыми современными используемыми браузерами (Edge, Safari, Chrome, Firefox, ...).
В вашем примере это диалоговое окно запускается при запуске события window.onbeforeunload
.
Это может быть хорошим решением для ответа на вопрос WCAG 3.2.5:
3.2.5 Изменение по запросу: изменения контекста инициируются только по запросу пользователя, или доступен механизм для отключения таких изменений. (Уровень ААА)
http://www.w3.org/TR/UNDERSTANDING-WCAG20/consistent-behavior-no-extreme-changes-context.html
Таким образом, это предотвратит, например, сторонний скрипт, перенаправляющий пользователя за пределы страницы без его подтверждения, или пользователь может по ошибке закрыть не то окно.
Но, конечно, открытие диалогового окна, когда не результат действия пользователя недоступен.