Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema

Estas en el tema de Problema en el foro de Frameworks JS en Foros del Web. Buenos días! tengo una duda, para el que tiene twitter no va a tener probleam en entenderme xD Les cuento como funciona, al darle click ...
  #1 (permalink)  
Antiguo 08/04/2012, 04:34
 
Fecha de Ingreso: diciembre-2011
Ubicación: Argentina
Mensajes: 88
Antigüedad: 13 años
Puntos: 4
Pregunta Problema

Buenos días! tengo una duda, para el que tiene twitter no va a tener probleam en entenderme xD

Les cuento como funciona, al darle click al SPAN:

Código HTML:
<span class="abrir_datos">Click!</span> 
Se despliega:

Código HTML:
<div class="desplegar_info_vd">
            <p>aaaaaaaaaaaaaaaaaaaaaaa</p>
            <p>bbbbbbbbbbbbbbbbbbbbbbb</p>
            <p><a href="#">cccccccccccccccc</a></p>
</div> 
Al darle click de nuevo se oculta. Ahí vamos bien, pero lo que quiero lograr es que al desplegar cualquiera de esos divs (uno o dos, como se ve en el ejemplo) aparezca una imagen que al cliquearla cierre todos los divs anteriormente mostrados y además que esa imagen desaparezca. Eso lo logre peeeroooo, si despliego un DIV, aparece la imagen, todo bien, peroooo al ocultar el/los DIV desplegado con el SPAN (en vez de la imagen para cerrarlos a todos) el DIV...

Código HTML:
<div id="cerrar_todo">

</div> 
...sigue viendose.

Osea lo que quiero es que al cerrar los DIVS desplegados (Cliqueando en el SPAN de cada uno) ese <div id="cerrar_todo"> desaparezca por más de que no haya sido utilizado ya que de nada va a servir porque estan todos los DIV plegados.





El DIV con class=".desplegar_info_vd" tiene un display: none;


Código HTML:
<!-- Boton para cerrar todo lo desplegado -->

<div id="cerrar_todo">

</div>

<!-- Aquí el div/section donde ira el contenido -->

<div id="contenedor">

    <div class="opciones">
        <p>HHHHHHHHHHHHH</p>
        <span class="abrir_datos">Click!</span> <!-- Al clikearlo se abrira el DIV siguiente -->		
        <div class="desplegar_info_vd">
            <p>aaaaaaaaaaaaaaaaaaaaaaa</p>
            <p>bbbbbbbbbbbbbbbbbbbbbbb</p>
            <p><a href="#">cccccccccccccccc</a></p>
        </div>
    </div>
    <div class="opciones">

        <p>HHHHHHHHHHHHHH</p>
        <span class="abrir_datos">Click!</span> <!-- Al clikearlo se abrira el DIV siguiente -->	
        <div class="desplegar_info_vd">
            <p>aaaaaaaaaaaaaaaaaaaaaa</p>
            <p>bbbbbbbbbbbbbbbbbbbbbb</p>
            <p><a href="#">ccccccccccccccc</a></p>
        </div>
    </div>

</div> 

Código Javascript:
Ver original
  1. //cerrar todo lo desplegado
  2.     $('#cerrar_todo').hide(); //lo oculto
  3.     $('.abrir_datos').click(function(){ //si lo preciono ("click!")
  4.          $('#cerrar_todo').fadeIn();    //mostrar .cerrar_todo
  5.     });
  6.  
  7.     $('#cerrar_todo').click(function(){  //al cliquear #cerrar_todo
  8.         $('.desplegar_info_vd').slideUp(); //cierro la info desplegada
  9.         $('#cerrar_todo').fadeOut(); // y oculto el botón cliqueado
  10.     });
  11.  
  12. //hacer que  #cerrar_todo desaparezca si se plegaron todos los divs SIN utilizarlo.
  13.  
  14. ¿?

Si saben como resumir el codigo no me vendría mal que me lo hagan saber

Última edición por Cotelandia; 08/04/2012 a las 04:40
  #2 (permalink)  
Antiguo 08/04/2012, 07:27
Avatar de elarrieux  
Fecha de Ingreso: abril-2012
Ubicación: Uruguay
Mensajes: 67
Antigüedad: 12 años, 8 meses
Puntos: 26
Respuesta: Problema

Hola!

Aca te hice una solucion:

http://jsfiddle.net/bG8w9/27/

Ojala te sirva.

Sds.
  #3 (permalink)  
Antiguo 08/04/2012, 10:33
 
Fecha de Ingreso: diciembre-2011
Ubicación: Argentina
Mensajes: 88
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema

Cita:
Iniciado por elarrieux Ver Mensaje
http://jsfiddle.net/bG8w9/27/
Gracias por responder, pero la verdad no entiendo mucho que hace ese código.
  #4 (permalink)  
Antiguo 08/04/2012, 13:24
Avatar de elarrieux  
Fecha de Ingreso: abril-2012
Ubicación: Uruguay
Mensajes: 67
Antigüedad: 12 años, 8 meses
Puntos: 26
Respuesta: Problema

Ahi te actualice un poco mas el ejemplo a ver si queda claro:

http://jsfiddle.net/bG8w9/33/

Si clickeas en cualquier linea, se va a ocultar esa linea.

Si clickeas en "ocultar las lineas..", te va a ocultar todas las lineas que estan dentro del mismo contenedor.

Si clickeas en la ultima linea visible, te va a ocultar el "ocultar las lineas.."

Esta bien ese comportamiento? era lo que querias?

El script es sencillo, lo que hace es ocultar la linea y fijarse si es la ultima linea visible dentro del contenedor. Si lo es, entonces oculta todo.

Si no te queda claro, avisame y le ponemos mas datos reales a ver si lo entendes mejor asi.

Sds.
  #5 (permalink)  
Antiguo 08/04/2012, 13:43
 
Fecha de Ingreso: diciembre-2011
Ubicación: Argentina
Mensajes: 88
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema

Me parece que me entendiste mal, o yo te entendi mal xD

Lo que quiero es (siguiendo tu código) que:

- haya un boton que este fuera de los divs y oculto.

- Los bloques azul y rojo tienen las "lineas" ocultas.

- Al hacer click en cualqueriera de los DIVs ".cerrarTodo" se tienen que desplegar las lineas del DIV ".contenedorLineas" siguiente (no de todos los ".contenedorLineas" del documento sino del que le sigue) y además se tiene que mostrar el boton.

- En caso de que se presionen nuevamente los DIVs ".cerrarTodo" se tienen que ocultar las lineas correspondientes.

- Y en caso de que se hayan cerrado todas las lineas cliqueando el DIV ".cerrarTodo", recien ahí ocultar el botón por más de que no haya sido usado para nada.

Quiero que ese botón trabaje como lo hace el de twitter. Al cerrar por otros medios los tweets este desaparece.



Gracias por la ayuda ^^

Última edición por Cotelandia; 08/04/2012 a las 13:58

Etiquetas: jquery, twitter
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:09.