Foros del Web » Programando para Internet » Javascript »

Pausa (delay) en FOR

Estas en el tema de Pausa (delay) en FOR en el foro de Javascript en Foros del Web. Hola buenas lo que deseo hacer es lo siguiente: Tengo los siguientes numeros: 7 4 1 8 5 2 9 6 3 0 Y deseo ...
  #1 (permalink)  
Antiguo 14/12/2011, 22:56
 
Fecha de Ingreso: diciembre-2010
Ubicación: Iquique
Mensajes: 50
Antigüedad: 12 años, 1 mes
Puntos: 5
Pausa (delay) en FOR

Hola buenas lo que deseo hacer es lo siguiente:

Tengo los siguientes numeros:
7 4 1 8 5 2 9 6 3 0

Y deseo que a travez de un for vayan cambiando de color 1 por 1. La cosa es que es demasiado rapido, como puedo darle una pausa al for para que se note los cambios de colores?


El codigo va así hasta el momento:
Código PHP:
function ordenar(){
    var 
numeros document.getElementById("numeros").value;
    var 
vectorNumeros= new Array();
    
vectorNumeros numeros.split(" ");
    
    for(var 
0vectorNumeros.lengthp++)
        
crearNodos(vectorNumeros[p], p);
    
document.getElementById("busqueda").className "busqueda";
    
    for(var 
0vectorNumeros.length-1i++){
       var 
menor i;
       
//Aqui es donde cambio el calor
       
document.getElementById("elemento" i).className "swapColor";
       
       if(
!= 0)
           
document.getElementById("elemento" + (i-1)).className "normal";
          
//Aqui una pausa de unos segundo y luego prosiga


       
for(var j=i+j<vectorNumeros.length j++){
           
          if (
parseInt(vectorNumeros[menor]) > parseInt(vectorNumeros[j]))
              
menor j;
       }
       
       var 
temp vectorNumeros[menor];
       
vectorNumeros[menor] = vectorNumeros[i];
       
vectorNumeros[i] = temp;
    }

Gracias de antemano
  #2 (permalink)  
Antiguo 15/12/2011, 02:09
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 20 años, 9 meses
Puntos: 1284
Respuesta: Pausa (delay) en FOR

Hola:

Debes temporizar el resultado... un ejemplo genérico:

for (i = 0; i < 10; i++)
setTimeout("mostrar(" + i + ")", i*1000);

function mostrar(n) {
document.getElementById("el_id_que_sea").innerHTML = n;
}

Ese código muestra en el tag referenciado la cuenta de 0 a 9 mostrándo los valores con la frecuencia de un segundo...

En base a esa idea debes modificar tu código... (es la forma de aplicar por ejemplo un efecto fade en muchos scripts...)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: pausa
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 01:20.