Ver Mensaje Individual
  #5 (permalink)  
Antiguo 22/04/2015, 01:59
Tusade
 
Fecha de Ingreso: marzo-2015
Mensajes: 42
Antigüedad: 9 años, 1 mes
Puntos: 2
Respuesta: Mostrar varios DIV con el mismo nombre al pulsar enlace

Me explico: tienes que sustituir el id="oculto1" por class="oculto1" en los atributos de todos las cajas div.

Tú tienes el siguiente código que muestra una caja oculta repetida varias veces:

Código HTML:
Ver original
  1. <a href="#" onClick="show('oculto1')">MOBILIARIO PARA EL HOGAR</a><br>
  2. <div id="oculto1" style="display:none;">Esto es una caja oculta</div>
  3. <div id="oculto1" style="display:none;">Esto es otra caja oculta</div>
  4. <div id="oculto1" style="display:none;">Esto es una tercera caja oculta</div>

Pues yo le cambiaría el atributo del div:

Código HTML:
Ver original
  1. <div class="oculto1" style="display:none;">Esto es una caja oculta</div>
  2. <div class="oculto1" style="display:none;">Esto es otra caja oculta</div>
  3. <div class="oculto1" style="display:none;">Esto es una tercera caja oculta</div>

Luego, nos vamos a Javascript y escribimos un bucle "for":

Código Javascript:
Ver original
  1. function show(bloq) {
  2.       var obj = document.getElementsByClassName(bloq); /* Esto nos recoge un array de todos los
  3.       elementos cuyo atributo class sea el contenido de la variable "bloq" */
  4.       for (var i = 0; i<obj.length; ++i) { /* Bucle for, le estamos diciendo que se ejecute según tantas
  5.       veces encuentre un elemento con atributo class="oculto1" */
  6.               obj[i].style.display = (obj[i].style.display=='none') ? 'block' : 'none'; /* No olvidemos poner
  7.                un [i] para identificar el elemento de un array. */
  8.       }
  9. }

Eso es lo que yo haría

EDIT: Ah, y te ha faltado declarar la variable "obj" en javascript (ponerle un "var" delante de obj), según veo.

Última edición por Tusade; 22/04/2015 a las 02:11