He escrito un sitio que usa jQuery para mostrar un menú emergente modal. En esencia, cubre toda el área visible de la pantalla con una superposición, luego muestra un DIV que contiene la ventana emergente real en la parte superior de la superposición. Uno de los requisitos para este proyecto tiene que ver con la accesibilidad.Cómo hacer que un lector de pantalla deje de leer y lea contenido diferente
Cuando se carga la página, el lector de pantalla comienza a leer desde la parte superior de la página. Cuando un usuario hace clic en un enlace en particular, mostramos un cuadro de diálogo modal. Mi pregunta es: ¿cómo puedo interrumpir la lectura del lector de pantalla de la parte principal del sitio y decirle que empiece a leer el texto del diálogo?
Mi contenedor modal está envuelto en un div así:
<div id="modalcontainer" tabindex="0" class="popup" role="dialog" aria-labelledby="dialog-label" >
El jQuery que dispara el modal es así:
$("#modalLink").click(function (e) {
e.preventDefault();
$("#modalcontainer").center();
$("#modalcontainer").show();
$("#closeBtnLink").focus();
$("#wrapper").attr('aria-disabled', 'true');
});
El "closeBtnLink" es el botón de cierre en el modal diálogo. Hubiera pensado que centrarme en esto indicaría al lector de pantalla que empiece a leer desde ese elemento.
El elemento "envoltorio" es un SIBLING del cuadro de diálogo modal. Por una sugerencia de otro usuario de SO por diferentes razones, configuro "aria-disabled = true" en el elemento contenedor que contiene la página completa. El diálogo modal existe como un hermano fuera de este contenedor.
Mi objetivo principal aquí es que el lector de pantalla lea los contenidos de mi elemento DIV modal cuando hacen clic en un enlace específico. Cualquier ayuda sería apreciada.
me había puesto el foco en el contenido, no la estrecha relación. ¿Hay un encabezado en el diálogo? – steveax
Existe, pero por alguna razón, uno de los requisitos es establecer el foco en el enlace cercano. Este cliente es EXTREMADAMENTE exigente con sus requisitos y, si está ahí, no hay nada que pueda hacer para cambiar de opinión. Gran corporación multinacional, ¿desde cuándo sus decisiones han sido correctas? :) – Scott
No hay manera consistente, por favor lea: http://www.sitepoint.com/ajax-screenreaders-work/ – Polity