Foros del Web » Programando para Internet » Jquery »

toggle de jquery

Estas en el tema de toggle de jquery en el foro de Jquery en Foros del Web. Hola a todos, Tengo un párrafo y quiero presionarlo tres veces y que en cada una de ellas cambié de color, para eso hice el ...
  #1 (permalink)  
Antiguo 17/01/2014, 20:42
Avatar de eduardobrutaldeath  
Fecha de Ingreso: agosto-2013
Ubicación: América
Mensajes: 306
Antigüedad: 11 años, 3 meses
Puntos: 3
toggle de jquery

Hola a todos,
Tengo un párrafo y quiero presionarlo tres veces y que en cada una de ellas cambié de color, para eso hice el siguiente código (que no funciona):

Código Javascript:
Ver original
  1. $("p").toggle(function(){
  2.   $(this).css({'color':'#f00'});
  3. },function(){
  4.   $(this).css({'color':'#00f'});
  5. },function(){
  6.  $(this).css({'color':'#00ff00'});
  7. });

Antes de hacer la payasada de arriba había logrado el efecto deseado con un bucle for, pero alguien me dijo que probara con TOGGLE, que era más fácil porque trabajaba como el evento CLICK y que podía agregar múltiples funciones con cada pinchada... hasta ahora lo sigo intentando ¬_¬. En realidad me he obsesionado un poco porque viendo unos tutoriales he notado que a todos les funciona perfectamente pero a mi no, y a pesar de que ya tengo la solución, a mi modo (con PHP), quiero saber porque no puedo ejecutar bien el TOGGLE.
  #2 (permalink)  
Antiguo 17/01/2014, 21:37
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: toggle de jquery

Sin necesidad de utilizar el método toggle:

Código HTML:
Ver original
  1. <div id = "ejemplo"></div>

Código Javascript:
Ver original
  1. var colores = ["#f00", "#00f", "#0f0"],
  2.     indice = -1;
  3.  
  4. $("#ejemplo").click(function(){
  5.     indice = indice == colores.length - 1 ? 0 : ++indice;
  6.     $(this).css("background", colores[indice]);
  7. });

El cambio se produce en cada clic sobre el Div, en donde la variable indice, aumentará su valor de uno en uno, hasta que llegue al límite de colores existentes en el array colores, momento en el que volverá a tener el cero por valor y así se le pueda asignar al Div cada uno de los colores del array.

Así se ve en ejecución: http://jsbin.com/IxateVo/1

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 17/01/2014, 22:12
Avatar de eduardobrutaldeath  
Fecha de Ingreso: agosto-2013
Ubicación: América
Mensajes: 306
Antigüedad: 11 años, 3 meses
Puntos: 3
Respuesta: toggle de jquery

Cita:
Iniciado por Alexis88 Ver Mensaje

Así se ve en ejecución: http://jsbin.com/IxateVo/1

Saludos
Gracias por la explicación pero, como dije, ya había conseguido el resultado, lo que sí me gustaría saber es porque no me funciona el Toggle... mira este video (http://www.youtube.com/watch?v=n01okW4psSU), aquí un tío muestra como conseguir el efecto de manera sencilla con el Toggle, pero a pesar de haberlo imitado a mi no me funciona... ve desde el minuto 17:00
  #4 (permalink)  
Antiguo 17/01/2014, 22:19
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: toggle de jquery

Probablemente sea porque no estás asignando las funciones como el método las debe tener. Chequea el manual oficial para que despejes tus dudas.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #5 (permalink)  
Antiguo 17/01/2014, 23:04
Avatar de eduardobrutaldeath  
Fecha de Ingreso: agosto-2013
Ubicación: América
Mensajes: 306
Antigüedad: 11 años, 3 meses
Puntos: 3
Respuesta: toggle de jquery

Cita:
Iniciado por Alexis88 Ver Mensaje
Probablemente sea porque no estás asignando las funciones como el método las debe tener. Chequea el manual oficial para que despejes tus dudas.

Saludos
Está en inglés T_T T_T T_T
  #6 (permalink)  
Antiguo 17/01/2014, 23:10
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: toggle de jquery

Entonces, lee esto: http://www.anerbarrena.com/jquery-to...tar-divs-1728/
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: funcion, javascript, php, 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 19:23.