Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Mostrar y ocultar al dar click?

Estas en el tema de Mostrar y ocultar al dar click? en el foro de Jquery en Foros del Web. Hola tengo una imagen oculta <img id="mifoto" src= "/> <button id="mostrarocultar">Ocultar o mostrar</button> Como puedo hacer para que cuando le de click al boton se ...
  #1 (permalink)  
Antiguo 14/03/2013, 15:11
Avatar de erozwashere  
Fecha de Ingreso: noviembre-2012
Ubicación: mex
Mensajes: 176
Antigüedad: 11 años, 5 meses
Puntos: 0
Mostrar y ocultar al dar click?

Hola tengo una imagen oculta

<img id="mifoto" src= "/>


<button id="mostrarocultar">Ocultar o mostrar</button>

Como puedo hacer para que cuando le de click al boton se muestre y se mantenga visible, pero si yo clickeo otra vez se oculte

Código Javascript:
Ver original
  1. $("#mostrarocultar").hover(function(){
  2.  
  3.  
  4. $("#mifoto").slideDown("slow");
  5.  
  6. },function(){
  7.     $("#mifoto").slideUp("slow");
  8. });

Logro hacerlo con hover, pero con el evento click no me funciona, alguna idea?
  #2 (permalink)  
Antiguo 14/03/2013, 15:24
Avatar de thedaket  
Fecha de Ingreso: junio-2011
Mensajes: 55
Antigüedad: 12 años, 9 meses
Puntos: 3
Respuesta: Mostrar y ocultar al dar click?

Puede usar la función toogle() de jQuery te dejo el enlace Suerte

[URL="http://api.jquery.com/toggle/"]http://api.jquery.com/toggle/[/URL]
__________________
Sí AJAX quieres usar jQuery debes agregar...
  #3 (permalink)  
Antiguo 14/03/2013, 15:32
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 2 meses
Puntos: 36
Respuesta: Mostrar y ocultar al dar click?

Antes se usaba toggle() de jQuery y me refieron antes de la version 1.9.1, pero como esta funcion causaba ambiguedad con un efecto llamado de la misma manera por eso la quitaron, entonces para que mejor de una vez te vayas acostumbrando tienes que implementar un booleano en el evento click, quedandote de esta manera:

Código Javascript:
Ver original
  1. var isVisible = false;
  2.         $(document).ready(function() {
  3.             $("#mostrarocultar").click(function() {
  4.                 if(isVisible){
  5.                     $("#mifoto").slideDown("slow");
  6.                     isVisible = false;
  7.                 } else {
  8.                     $("#mifoto").slideUp("slow");
  9.                     isVisible = true;
  10.                 }
  11.             });
  12.         });
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #4 (permalink)  
Antiguo 14/03/2013, 15:33
Avatar de erozwashere  
Fecha de Ingreso: noviembre-2012
Ubicación: mex
Mensajes: 176
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Mostrar y ocultar al dar click?

Cita:
Iniciado por thedaket Ver Mensaje
Puede usar la función toogle() de jQuery te dejo el enlace Suerte

[URL="http://api.jquery.com/toggle/"]http://api.jquery.com/toggle/[/URL]
Gracias!
  #5 (permalink)  
Antiguo 14/03/2013, 15:58
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 2 meses
Puntos: 36
Respuesta: Mostrar y ocultar al dar click?

Cita:
Cita:
Iniciado por thedaket
Puede usar la función toogle() de jQuery te dejo el enlace Suerte

http://api.jquery.com/toggle/
Gracias!
A menos que nunca vayas a tener planeado cambiar la libreria de jQuery esta bien usar toggle().
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #6 (permalink)  
Antiguo 14/03/2013, 20:18
Avatar de erozwashere  
Fecha de Ingreso: noviembre-2012
Ubicación: mex
Mensajes: 176
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Mostrar y ocultar al dar click?

Cita:
Iniciado por Reedyseth Ver Mensaje
Antes se usaba toggle() de jQuery y me refieron antes de la version 1.9.1, pero como esta funcion causaba ambiguedad con un efecto llamado de la misma manera por eso la quitaron, entonces para que mejor de una vez te vayas acostumbrando tienes que implementar un booleano en el evento click, quedandote de esta manera:

Código Javascript:
Ver original
  1. var isVisible = false;
  2.         $(document).ready(function() {
  3.             $("#mostrarocultar").click(function() {
  4.                 if(isVisible){
  5.                     $("#mifoto").slideDown("slow");
  6.                     isVisible = false;
  7.                 } else {
  8.                     $("#mifoto").slideUp("slow");
  9.                     isVisible = true;
  10.                 }
  11.             });
  12.         });

Gracias los 2 funcionan, solo que en el bolean tengo que dar un click y luego otro click y solo hasta el segundo click funciona, y en el toggle funciona al primer click, alguna idea de por que?

Saludos
  #7 (permalink)  
Antiguo 14/03/2013, 21:56
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 2 meses
Puntos: 36
Respuesta: Mostrar y ocultar al dar click?

Cita:
Iniciado por erozwashere Ver Mensaje
Gracias los 2 funcionan, solo que en el bolean tengo que dar un click y luego otro click y solo hasta el segundo click funciona, y en el toggle funciona al primer click, alguna idea de por que?

Saludos
A eso pasa por que esta en false, solo cambialo a true y funciona a la primera.
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #8 (permalink)  
Antiguo 16/03/2013, 19:32
Avatar de erozwashere  
Fecha de Ingreso: noviembre-2012
Ubicación: mex
Mensajes: 176
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Mostrar y ocultar al dar click?

Cita:
Iniciado por Reedyseth Ver Mensaje
A eso pasa por que esta en false, solo cambialo a true y funciona a la primera.
aa Vale gracias, Saludos :D

Etiquetas: Ninguno
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 02:04.