Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] No funciona bucle for

Estas en el tema de No funciona bucle for en el foro de Jquery en Foros del Web. Hola gente, como andan? Les muestro mi código y me dicen si ven algo que este fallando, yo la verdad ya me rendí. Código: for ...
  #1 (permalink)  
Antiguo 12/03/2017, 09:19
 
Fecha de Ingreso: julio-2010
Mensajes: 39
Antigüedad: 13 años, 9 meses
Puntos: 0
No funciona bucle for

Hola gente, como andan?

Les muestro mi código y me dicen si ven algo que este fallando, yo la verdad ya me rendí.

Código:
                    for (var i = 0; i < 2; i++) { 
				function apareceA(){
			   		$('#A').css('opacity', '1');
				}
				setTimeout(apareceA, 1350);

				function apareceB(){
					$('#B').css('opacity', '1');
				}
				setTimeout(apareceB, 1650);

				function apareceC(){
					$('#C').css('opacity', '1');
				}
				setTimeout(apareceC, 2250);

				function apareceD(){
					$('#D').css('opacity', '1');
				}
				setTimeout(apareceD, 2550);

				function desaparecen(){
			    	$('#A, #B, #C, #D').css('opacity', '0');
			    }
			    setTimeout(desaparecen, 3000); 
		    };
Bueno resulta que el código me funciona, pero pasa solo una vez, yo quiero que pase las dos veces, para eso hago el bucle for, pero no me lo toma. Solo ocurre una sola vez.

Saludos.
  #2 (permalink)  
Antiguo 12/03/2017, 09:47
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: No funciona bucle for

la cuestion es que tienes i < 2... ponlo de la forma i <= 2, agregando el =
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #3 (permalink)  
Antiguo 13/03/2017, 14:29
 
Fecha de Ingreso: octubre-2009
Mensajes: 305
Antigüedad: 14 años, 6 meses
Puntos: 29
Respuesta: No funciona bucle for

además de lo indicado por @petit89 te recomiendo que declares las funciones fuera del ciclo, y que le asignes a cada ID un numero único, porque si no no funcionará
  #4 (permalink)  
Antiguo 13/03/2017, 16:40
 
Fecha de Ingreso: julio-2010
Mensajes: 39
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: No funciona bucle for

Dices que el id en vez de que sea una letra sea un numero???
  #5 (permalink)  
Antiguo 14/03/2017, 07:50
 
Fecha de Ingreso: julio-2010
Mensajes: 39
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: No funciona bucle for

en efecto, un ID debe ser único, y puede estar compuesto por letras y números.

el problema del como lo tienes es que en dicho ciclo habrán mas de un elemento con el mismo ID, y entonces ¿como distingues, por ejemplo la #fila numero uno de un total de 5 filas llamadas todas #fila?: #fila #fila #fila #fila #fila

o lo haces con el índice, lo cual puedes hacer con getElementsByName pero usando el atributo NAME, o defines #fila1 #fila2 #fila3 #fila4 #fila5 y lo haces más fácil con getElementById.
  #6 (permalink)  
Antiguo 14/03/2017, 12:09
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: No funciona bucle for

Eso se ejecuta dos veces. El problema es que el setTimeout no hace lo que tú crees que hace. ASí que el resultado, se de una vuelta en el bucle, dos, tres o veinte, es el mismo.
Lo que disparan los timeout, coincide en el tiempo, y ejecuta lo mismo 2 veces en cada "franja" de tiempo que has definido.

Etiquetas: bucle, funcion, javascript
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 23:46.