Как сделать доступным апплет на странице с помощью кнопки?

На странице HTML у меня есть <button>, Нажав на нее, JavaScript вставляет апплет в <div> в другом месте на странице. Повторное нажатие скрывает div. Больше щелчков переключает его. (Если это имеет значение, то это апплет GeoGebra.)

У меня есть несколько вопросов о том, как сделать такую ​​вещь доступной. Я надеюсь, что некоторые гуру доступности могут иметь ответы.

  1. Моя кнопка имеет заголовок "Показать калькулятор" и при нажатии переключается на "Скрыть калькулятор". Что-нибудь еще может быть связано с атрибутами кнопок?
  2. Правильно ли вводить апплет в <div>вместо, скажем, HTML <object>?
  3. Когда кнопка нажата, может ли фокус остаться на кнопке или она должна перейти к апплету? Если фокус остается на кнопке, нужно ли предоставить пользователю программы чтения с экрана простой способ перехода к апплету? И если да, то как таким образом общаться с пользователем? Должен ли я предоставить простой способ вернуть фокус с апплета на кнопку?
  4. Для такого рода вещей, если на <div>? Есть ли подходящая роль арии? И уместно ли в этой ситуации использовать область живого арии, объявляющую показ / скрытие div?

1 ответ

Решение

Для лучшего доступа, вы должны следовать шаблону раскрытия виджета.

Чтобы ответить на ваши конкретные вопросы.

  1. Шаблон раскрытия говорит об атрибутах ARIA, которые должны быть установлены на вашей кнопке.
  2. Извините, это не относится к доступности, поэтому я не могу ответить на него.
  3. В общем, вы не должны перемещать фокус после выбора кнопки. В противном случае это может привести к нарушению WCAG 3.2.2 "На входе", "если пользователь не был проинформирован о поведении перед использованием компонента".

    Если дать пользователю знать, как добраться до апплета, если вы будете следовать шаблону виджета раскрытия, он будет слышать "развернутый" или "свернутый" при изменении значения aria-expanded так что пользователь будет знать, что что-то следует. Ваш апплет сразу следует за кнопкой в ​​DOM? Это было бы лучшим решением. Если между кнопкой и новым внедренным апплетом есть элементы, это может сбить с толку.
  4. aria-live может быть очень удобно, но в этом случае не должно быть необходимости, если № 3 следует.
Другие вопросы по тегам