Hoy, en la recta final de los desarrollos evolutivos de la web de las Jornadas Salud Investiga desde Fundación Progreso y Salud, he intentado aproximar las necesidades del cliente al problema de la accesibilidad. Se trata de un proyecto de carácter interno y tenemos un mayor control sobre las decisiones técnicas, o dicho de otro modo, tenemos un control más granular.
La web parte de un antiguo desarrollo manual en PHP, que se ha ido actualizando, año tras año, a nivel de contenidos y estructura. A causa de la escasez de tiempo y de la pobre difusión de los beneficios de usar frameworks de desarrollo, o mejor aún, de los gestores de contenido, el proceso de modificación es todavía manual. Pero dentro de los recursos que se disponen, siempre se puede hacer algo más por los usuarios sin un coste adicional en tiempo ni en esfuerzo.
Pasando a lo concreto, los menús de la aplicación cargaban el contenido en un iframe central que, para colmo, ni siquiera tenía dimensionada la altura, por lo que la página mostraba dos barras de desplazamiento: la del navegador y la del iframe. Este aspecto no era del agrado de los responsables de la web, y por supuesto, tampoco cumplía con unos mínimos criterios de accesibilidad, seguridad y estética. Además, un JavaScript intrusivo se dedicaba a desplegar los submenús en función de la opción seleccionada.
En vista de la situación, he propuesto los siguientes cambios de estructura:
- El iframe desaparece, salvo en tres casos especiales en los que se incrustan formularios alojados en otro servidor.
- En lugar del iframe, un dispatcher implementado en PHP decide, en función de un parámetro HTTP GET, qué contenido debe cargar con un require().
- El JavaScript desaparece en favor de una comprobación, en cada elemento principal de menú, para determinar si dicho elemento o alguno de sus hijos coincide con la opción seleccionada, en cuyo caso se despliega el submenú. No es la mejor opción porque la verificación es redundante, pero no existe otra alternativa dado que la generación del menú no es dinámica, sino totalmente estática.
Sinceramente, hay otros aspectos mejorables en cuanto a accesibilidad, pero con estos cambios mínimos, que de paso mejora usabilidad, seguridad y estética del sitio, la navegación no se ve obstaculizada por un método de programación incorrecto.
Todavía nos queda mucho por avanzar hacia una web totalmente accesible y bien construida, pero cada pequeño paso que se da es importante para alcanzar esa meta.
Comentarios
Comparta su opinión