Я написал сайт, который использует jQuery для отображения модального всплывающего окна. По сути, он покрывает всю видимую область экрана оверлеем, а затем показывает DIV, который содержит фактическое всплывающее окно поверх оверлея. Одно из требований к этому проекту связано с доступностью.
Когда страница загружается, программа чтения с экрана начинает чтение с верхней части страницы. Когда пользователь нажимает на определенную ссылку, мы отображаем модальное диалоговое окно.У меня такой вопрос: как мне прервать чтение программой чтения с экрана основной части сайта и сказать ей, чтобы она начала читать текст диалога?
Мой модальный контейнер заключен в div следующим образом:
<div id="modalcontainer" tabindex="0" class="popup" role="dialog" aria-labelledby="dialog-label" >
jQuery, запускающий модальное окно, выглядит так:
$("#modalLink").click(function (e) {
e.preventDefault();
$("#modalcontainer").center();
$("#modalcontainer").show();
$("#closeBtnLink").focus();
$("#wrapper").attr('aria-disabled', 'true');
});
CloseBtnLink — это кнопка закрытия в модальном диалоговом окне. Я бы подумал, что установка фокуса на этом даст указание программе чтения с экрана начать чтение с этого элемента.
Элемент "wrapper" является SIBLING модального диалога. По предложению другого пользователя SO по разным причинам я установил «aria-disabled = true» для элемента-оболочки, содержащего всю страницу. Модальное диалоговое окно существует как одноуровневое за пределами этого контейнера.
Моя основная цель здесь — заставить программу чтения с экрана читать содержимое моего модального элемента DIV, когда они нажимают на определенную ссылку. Любая помощь будет оценена по достоинству.