Введение в WAI-ARIA: стандарт доступности активных интернет-приложений
Разместил: rgbeast
WAI-ARIA (Web Accessibility Initiative - Accessible Rich Internet Applications) — стандарт доступности активных Интернет-приложений, определяет подходы к тому, чтобы сделать содержимое сайтов и интернет-приложения более доступными для людей с ограниченными возможностями.
Применение стандарта особенно эффективно для сайтов с динамическим содержимым и развитыми элементами управления пользовательским интерфейсом, разработанными с использованием Ajax, HTML, JavaScript, и связанных с ними технологий. В настоящее время, некоторые функциональные возможности веб-сайтов недоступны для части пользователей с ограниченными физическими возможностями, особенно для людей, полагающихся на программы, читающие с экрана и для тех людей, которые не могут использовать мышь. WAI-ARIA задает новые пути предоставления функциональных возможностей программами-помощниками. С помощью WAI-ARIA разработчики могут создавать прогрессивные веб-приложения, доступные и удобные для всех пользователей.
Настоящая статья описывает проблемы, решению которых посвящен стандарт WAI-ARIA, а также знакомит с пакетом технических документов WAI-ARIA. Используемая терминология описана в ранее опубликованной статье «Приведение сайта в соответствие со стандартом WAI-WCAG».
Как сделать Ajax и связанные с ним технологии доступными
Все больше сайтов в Интернете используют для управления страницей сложные и продвинутые системы, такие как, древовидные меню на Javascript. Чтобы обеспечить доступ людям с физическими нарушениями, специальным браузерам и технологиям-помощникам необходимо взаимодействовать с этими системами управления, однако информация, которая для этого требуется, оказывается недоступной на большинстве существующих сегодня сайтов.
Другим примером барьера на пути к нормальному использованию возможностей сайта может служить техника перетаскивания объектов (drag & drop), недоступная пользователям, не способным управлять мышью, имеющим в распоряжении только клавиатуру. Даже относительно простые сайты могут оказаться сложными в использовании, если они требуют огромного количества нажатий клавиш при управлении с помощью только одной клавиатуры.
Многие Интернет-приложения, разработанные с применением Ajax (известным так же как AJAX), DHTML и других технологий создают дополнительные проблемы доступа к информации. Например, если содержимое страницы изменяется в ответ на действия пользователя, по истечении определенного времени или в связи с внезапными обновлениями, то это новое содержимое может оказаться недоступным для людей, использующих программы чтения с экрана – слепых или людей с когнитивными расстройствами.
Стандарт WAI-ARIA позволяет решить эти проблемы доступа, устанавливая способы сделать всю необходимую информацию о работе сайта доступной программам-помощникам. С помощью стандарта даже сложные интернет-приложения можно сделать доступными и удобными для людей с ограниченными возможностями.
Технические решения
Рассмотрим принцип работы стандарта WAI-ARIA более конкретно. Стандарт WAI‑ARIA задает набор атрибутов HTML, позволяющих идентифицировать взаимодействующие с пользователем функции, установить их взаимосвязь и текущее расположение. Стандарт описывает новые техники навигации для выделения областей и основных элементов структуры сайта, таких как меню, основное содержимое, второстепенное содержимое, информация о баннерах. Например, с использованием WAI-ARIA разработчики могут обозначить области на страницах, позволяя пользователям легко перемещаться между областями с помощью клавиатуры без необходимости многокоратно нажимать клавишу Tab.
WAI-ARIA включает в себя технологии для обозначения элементов управления, активных областей AJAX, событий и самодельных элементов управления. Техники WAI-ARIA применимы к кнопкам, выпадающим спискам, календарям, древовидным элементам, и др.
Стандарт WAI-ARIA предоставляет авторам сайтов:
- Роли для описания типа активного элемента, например: "menu," "treeitem," "slider," и "progressmeter". Например <div role = "checkbox">
- Роли для описания структуры страниц, например: заголовки, области и таблицы.
- Атрибуты для описания состояния, в котором находится элемент управления, например "checked" для чекбокса и "haspopup" для меню.
- Атрибуты для задания активных областей страницы, допускающих обновления (например, биржевые котировки), а также способа появления данных обновлений. Например, важные обновления могут представляться в диалоговом окне, а второстепенные — появляться прямо на странице.
- Атрибуты для перетаскивания объектов, описывающие переносимые ресурсы и целевые положения в документе. Возможность управления с клавиатуры объектами и событиями.
Пример использования атрибутов:
onkeydown="return checkBoxEvent(event);"
onclick="return checkBoxEvent(event);" >
A checkbox label
</span>
Документы стандарта WAI-ARIA
Технические документы стандарта WAI-ARIA разработаны рабочей группой PFWG (Protocols and Formats Working Group), которая является частью W3C-WAI (World Wide Web Consortium Web Accessibility Initiative).
Пакет документов стандарта WAI-ARIA, находящийся сегодня в виде черновика, содержит следующие документы:
- Техническое описание стандарта WAI-ARIA 1.0.
- Учебник WAI-ARIA для начинающих.
- Практические рекомендации по применению WAI-ARIA
- План развития WAI-ARIA
Согласно текущему плану, роли и атрибуты, описанные в WAI-ARIA предполагается сделать стандартными в HTML 5.0.