Как использовать aria-label и aria-labelledby для получения видимых и невидимых (настраиваемых) значений от читателя?
Есть ли способ получить видимое имя метки и настроенное имя, используя aria-label или aria-labelledby, или любой другой атрибут
Например, приведенный ниже код говорит:
<div>
<div id="shankar">Name</div>
<input type="text" aria-labelledby="shankar"/>
</div>
<div>
<div id="set-address">Address</div>
<input type="text" aria-label="set-address"/>
</div>
читатель:- 1. Имя редактируемого текста (для первого поля ввода) 2. Заданный адрес редактирования текста (для 2-го поля ввода)
Я прошел через ссылку, введите описание ссылки здесь
Что я должен сделать здесь, чтобы получить сообщение как: - Установить адрес для текста редактирования адреса? какой атрибут я должен использовать здесь?
1 ответ
Для программы чтения с экрана, и потому что в вашем случае, если для ввода формы, правильный синтаксис:
<div>
<label for="shankar">Name</label>
<input type="text" id="shankar"/>
</div>
Вы должны связать тег Label с атрибутом, который нацелен на атрибут "id".
Если вы находитесь в другом случае (например, раскрывающемся списке или вкладке):
Будет что-то вроде (здесь показан пример для раскрывающегося списка перевода):
// My label structure
<button id="associatedLang" role="button" title="" aria-expanded="true">
<span class="ps-current-lang">FR</span>
<span aria-hidden="true" class="ps-icon ps-icon-chevron-down"></span>
<span class="sr-only">Changer de langue</span>
</button>
//MY associated content
<ul aria-labelledby="associatedLang">
<li class="ng-star-inserted">
<a target="_self" href="####" lang="en" title="EN - English">
EN
</a>
</li>
</ul>