В issue от 30 августа описан сценарий: график с
accessibility.announceNewData.enabled ставит отложенное объявление для screen reader. Потом компонент уничтожают, но два таймера не очищаются. Один позже может объявить новые данные, второй - записать текст в уже отсоединённый live-region.Для зрячего пользователя экран уже перешёл дальше. А пользователь скринридера может услышать сообщение от старого графика, которого в интерфейсе больше нет. Это ложный контекст: человек пытается понять текущий экран, а ему подмешивают событие из прошлого состояния.
Что проверять:
• при размонтировании виджета очищаются все
setTimeout/setInterval;•
aria-live не объявляет события от старого состояния;• после закрытия модалки, вкладки или графика нет запоздалых озвучек;
• на это есть регрессионный тест.
Доступность ломается и от тишины, и от лишней речи. Старый компонент не должен продолжать говорить.
Источник: Highcharts issue #25117