Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/11/2011, 14:02
Avatar de oNefl0w189
oNefl0w189
 
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 117
Antigüedad: 14 años, 1 mes
Puntos: 4
Problema Script mostrar/ocultar divs

Hola compañeros. Tengo un script el cual utilizo para mostrar o ocultar un div cuando pulsen un boton, vamos lo típico de +Info que lo que hace es al darle mostrar un div con un contenido y al volver a darle ocultarlo.

El problema es que son 3 divs distintos, y para abrir el tercero (p.e) primero tengo que abrir el primero y el segundo.
Yo lo que quiero es que den al que den se abra, independientemente de si los otros estan abiertos o no.

Os dejo el codigo:

Código Javascript:
Ver original
  1. <script language="JavaScript">
  2. function muestra_oculta(id){
  3. if (document.getElementById){ //se obtiene el id
  4. var el = document.getElementById(id); //se define la variable "el" igual a nuestro div
  5. el.style.display = (el.style.display == 'none') ? 'block' : 'none'; //damos un atributo display:none que oculta el div
  6. }
  7. }
  8. window.onload = function(){/*hace que se cargue la función lo que predetermina que div estará oculto hasta llamar a la función nuevamente*/
  9. muestra_oculta('contenido_a_mostrar');/* "contenido_a_mostrar" es el nombre que le dimos al DIV */
  10. muestra_oculta('contenido_a_mostrar1');
  11. muestra_oculta('contenido_a_mostrar2');
  12. }
  13. </script>

Los botones que ejecutan la funcion:
Código HTML:
Ver original
  1. <a class="button" style='cursor: pointer;' onclick="muestra_oculta('contenido_a_mostrar')"><span><span>+ Info</span></span></a>
  2. <a class="button" style='cursor: pointer;' onclick="muestra_oculta('contenido_a_mostrar1')"><span><span>+ Info</span></span></a>
  3. <a class="button" style='cursor: pointer;' onclick="muestra_oculta('contenido_a_mostrar2')"><span><span>+ Info</span></span></a>

Y los divs:
Código HTML:
Ver original
  1. <div id="contenido_a_mostrar">
  2. <h2>Acerca de nuestros proyectos</h2>
  3. </div>