Как исправить проблему доступности программы чтения с экрана jaws

#javascript #angular #screen-readers #jaws-screen-reader

Вопрос:

На своей веб-странице я установил программу чтения с экрана, которая автоматически считывает некоторый контент. Когда программа чтения с экрана прочитает последнее содержимое(в процентах), затем после нажатия клавиши со стрелкой вниз сосредоточьтесь на следующем элементе(нижний колонтитул), но программа чтения с экрана переместится на первый элемент(верхний колонтитул). Мне нужно сосредоточиться на следующем элементе, а не на первом элементе. Для этого я использую angular 11.

 <app-header></app-header>
<div>
    <span role="alert">
      <span> Preparing environment...</span>
    </span>
</div>
<div>
<span  [attr.aria-label]="Your environment ready in {{minutes}} minutes {{second}} seconds">
    <span aria-hidden="true">
      <span>Your environment ready in </span>
      <countdown *ngIf="!min" [config]="minutes" (event)="handleCountDown($event)"></countdown>
      <span> {{ minutes }}</span>
    </span>
  </span>
  <div class="progress" >
    <div class="indeterminate"></div>
  </div>
  <div class="progress">
    <div class="progress-bar">
      {{ percentage }} %
    </div>
  </div>
</div>
<app-footer></app-footer>

header code

<div role="banner" class="navbar navbar-expand-lg py-0 headerBg" role="banner">
    <img class="logo" aria-label="company logo" src="./logo.jpg" />
</div>


footer code
<footer id="footer" role="contentinfo" aria-label="footer" class="footerBottom">
  <div class="row">
      <p class="mb-0">
       <span> footer...</span> 
      </p>
  </div>
</footer>
 

Комментарии:

1. Вам придется показать свой код, иначе как мы узнаем, о каких элементах здесь идет речь.

2. Хорошо, позвольте мне опубликовать

3. Ваш последний тег p-это тот, который не зачитывается правильно? У него нет закрытия </p> . Попробуйте добавить это после </span>

4. Нет, это не проблема с тегом p. Здесь я забыл закрыть тег p

5. ОК. Может быть, попробуйте p хоть раз вставить контент напрямую и удалить свой span . span это ничего не значит семантически. Кстати, это работает на моем NVDA.