Hola otra vez:
Subí la misma página con unas modificaciones que creo que pueden ayudarte...
Te trataré de explicar el sentido del script.
Tanto mostrar y ocultar hacen exactamentelo mismo, incluso sería fácil modificarlo para que solo fuese un script, pero no voy a liarte (cuando te funcione como pretendes, si te interesa te lo explico).
El parámetro que reciben estas funciones es una cadena de texto con los atributos name de las imágenes que se quieren mostrar u ocultar... mostrar(hospitales), equivale a mostrar("h1,h2,h3")...
Hasta aquí no creo que tengas problemas (de lo contrario avísame)
Dentro de la función la primera línea convierte la cadena en un array de las subcadenas que están separadas por la coma:
var datos = dato.split(",");// => datos = ["h1", "h2", "h3"]
Siempre considerando que hospitales/datos sea "h1,h2,h3"...
La siguiente línea es un bucle que recorre todas las imágenes cuyo name se corresponda con los datos pasados en el parámetro, y modifica su visibilidad.
Tan solo añadí estas imágenes:
<img name="h1" src='smile.gif' style="position: absolute; left: 175; top: 30; visibility: hidden" />
<img name="h2" src='smile.gif' style="position: absolute; left: 10; top: 150; visibility: hidden" />
<img name="h3" src='smile.gif' style="position: absolute; left: 55; top: 80; visibility: hidden" />
...Fíjate en el atributo name... y ya de paso cambié el dibujo, porque pienso que lo que quieres quedaría bien si para los hospitales pones miniaturas de hospitales, y con las iglesias pones iglesitas ... y monumentitos... y oficinitas de turismito... etc.
Bien, ya sabes que si no llegas a enterarte del todo, sigue preguntando que así se aprende.
Saludos