Foros del Web » Programando para Internet » Jquery »

duda uso toggle en jquery

Estas en el tema de duda uso toggle en jquery en el foro de Jquery en Foros del Web. Hola, Tengo un div (#botón) actuando como botón. Quiero que al pulsarlo aparezca otro div oculto por defecto (#desple) y que al mismo tiempo se ...
  #1 (permalink)  
Antiguo 15/01/2011, 09:35
prozaius
Invitado
 
Mensajes: n/a
Puntos:
Pregunta duda uso toggle en jquery

Hola,

Tengo un div (#botón) actuando como botón. Quiero que al pulsarlo aparezca otro div oculto por defecto (#desple) y que al mismo tiempo se oscurezca la capa contenedora (#principal). Al volver a pulsar el botón todo debe volver a la situación incial. He conseguido que el div #desple funcione ok, pero no sé como alternar el tema de la opacidad, pues tal y como lo tengo se oscurece al primer click pero no retorna a la opacidad normal. El código utilizado es el siguiente:

Código:
$(document).ready(function(){
    $("#boton").click(function(event){
	$("#desple").toggle("slow");							   
	$("#principal").css("opacity",0.5);
});
});
También he intentado algo como esto pero no funciona:

Código:
$(document).ready(function(){
    $("#boton").click(function(){
	$("#desple").toggle("slow");							   
	$("#principal").toggle(function(){
            $("#principal").css("opacity",0.5);
});
});
});
Y complicando aún más la cosa, me gustaría que cuando se oscurezca el div #principal también se oscurezca el div #botón.


Agradezco alguna ayuda.
  #2 (permalink)  
Antiguo 15/01/2011, 09:46
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola prozaius

Muevo tu tema al foro de Frameworks y Plugins Javascript desde Javascript.

Saludos,
  #3 (permalink)  
Antiguo 15/01/2011, 09:58
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: duda uso toggle en jquery

Podrías hacer algo asi:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.    $("#boton").click(function(event){
  3.       $("#desple").toggle("slow", function(){
  4.          $("#principal").css("opacity", $(this).is(':visible') ? 1 : 0.5);
  5.       });                                    
  6.    });
  7. });

Saludos.
  #4 (permalink)  
Antiguo 15/01/2011, 13:29
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 10 meses
Puntos: 206
Respuesta: duda uso toggle en jquery

Pues yo lo haría así:

Código:
	
$(function(){
	$("#boton").toggle(
		function(){
			$("#principal").fadeTo("slow",0.5, function() { $("#desple").fadeIn("slow"); });
		},
		function(){
			$("#desple").fadeOut("slow",function(){ $("#principal").fadeTo("slow",1); });
		}
	);
});
  #5 (permalink)  
Antiguo 16/01/2011, 04:35
prozaius
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: duda uso toggle en jquery

Muchas gracias por vuestras respuestas, estudiaré ambas.

Otro problema que me ha surgido: en vez de un desplegable, tengo 3 (#desple1,#desple2,#desple3) situados en la misma posición y todos con display none y overflow hidden y tres botones, cada uno debe actuar sobre un desple haciendo lo mismo que os comentaba en mi primera pregunta. He conseguido que haciendo dos clicks seguidos sobre el mismo botón funcione su desple, es decir, con el primer click aparece y con el segundo se oculta, pero si por ejemplo hago un sólo click en el primer botón (y por tanto aparece su desple) y a continuación hago click en otro botón se produce un desbordamiento y no aparece su desple en lugar del primero, sino en otro lugar. ¿Cómo podría solucionarlo?

El código es el siguiente:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $("#boton1").click(function(){
  3.     $("#desple1").toggle("slow");
  4. });
  5.     $("#boton2").click(function(){
  6.     $("#desple2").toggle("slow");
  7. });
  8.     $("#boton3").click(function(){
  9.     $("#desple3").toggle("slow");
  10. });
  11. });

Gracias de nuevo.
  #6 (permalink)  
Antiguo 16/01/2011, 07:32
prozaius
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: duda uso toggle en jquery

Bueno, era un problema de poner el posicionamiento de los div como absolute, así que arreglado.

Etiquetas: toggle
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 00:58.