Fallo común WCAG 2.2
F52Ventanas emergentes que se abren solas al cargar la página
Nombre oficial en el W3C: Fallo del criterio de conformidad 3.2.5 debido a abrir una ventana nueva en cuanto se carga una página
En pocas palabras
Algunas webs abren una ventana nueva, por ejemplo con publicidad, en cuanto se carga la página. Si esa ventana se lleva el foco, la persona pasa a otro sitio sin haberlo pedido. Las ventanas nuevas solo deben abrirse cuando el usuario lo pide.
Por qué es importante
Quien usa un lector de pantalla (programa que lee en voz alta lo que hay en la pantalla) empieza a oír otra página sin saber por qué. Puede no darse cuenta de que está en otra ventana. El botón «Atrás» no funciona y no encuentra lo que buscaba.
Con un ampliador de pantalla solo se ve una parte pequeña, y la ventana nueva puede taparla. También confunde a personas con dificultades cognitivas y a cualquiera que entra con prisa.
Cómo evitarlo
- No llame a
window.open()en el eventoloadni al iniciar la página. - Abra ventanas nuevas solo cuando la persona pulse un enlace o un botón.
- Si un enlace abre otra ventana, indíquelo en el texto, por ejemplo «(se abre en una ventana nueva)».
- Muestre las promociones y los avisos dentro de la propia página, sin abrir ventanas.
Cómo comprobarlo
- Abra la página en un navegador con el bloqueo de ventanas emergentes desactivado.
- Observe si se abre una pestaña o ventana nueva sin hacer nada.
- Si se abre y queda en primer plano con el foco, la página tiene este fallo.
- En el código, busque
window.opendentro de funciones que se ejecutan al cargar la página.
Ver el texto completo del W3C (traducción al español)
Esta es una traducción no oficial al español de la técnica F52 de Techniques for WCAG 2.2, del W3C. Puede contener errores. El único documento oficial y normativo es la versión original en inglés, publicada en el sitio web del W3C.
Aplicabilidad
Se aplica cuando se usan scripts para abrir ventanas nuevas.
Descripción
Algunos sitios web abren una ventana nueva cuando se carga una página, para anunciar un producto o servicio. El objetivo de esta técnica es garantizar que las páginas no desorienten a los usuarios abriendo una o varias ventanas nuevas que reciben el foco automáticamente en cuanto se carga una página.
Ejemplos
Hay varios métodos por los que puede producirse este fallo. A continuación se recogen como ejemplos dos casos habituales, que las distintas versiones de los agentes de usuario admiten de forma diferente.
Ejemplo usado habitualmente para abrir ventanas nuevas al cargarse las páginas
window.addEventListener("load", showAdvertisement, true);
window.attachEvent("onload", showAdvertisement);
function showAdvertisement(){
window.open('noscript.html', '_blank', 'height=200,width=150');
}
Pruebas
Procedimiento
- Cargar una página nueva
- Comprobar si se ha abierto una ventana nueva como resultado de cargar la nueva página
- Comprobar si la ventana nueva recibe el foco automáticamente
Resultados esperados
- Si las comprobaciones n.º 2 y n.º 3 son verdaderas, se da esta condición de fallo y el contenido falla el criterio de conformidad.
Cómo lo comprobamos en ADDAW
Este error es uno de los que buscamos en cada auditoría de ADDAW. Se lo entregamos con capturas y la forma de corregirlo.
Basado en la técnica F52 del W3C (WCAG 2.2). Explicación y ejemplos: ADDAW. Traducción no oficial del texto del W3C © W3C, licencia de documentos del W3C. ¿Ha visto un error? Escríbanos.