Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/06/2011, 08:09
sergiogmuro
 
Fecha de Ingreso: junio-2007
Ubicación: Argentina
Mensajes: 111
Antigüedad: 16 años, 11 meses
Puntos: 0
Exclamación Bucle Javascript con Ajax me cuelga el explorador hasta que termina

Hola, chicos espero puedan ayudarme.. les cuento uqe tengo un bucle en javascript que levanta escribe en la db con ajax .. y tengo una barra de progreso que se va llenando mediante el porcentaje completado. el problema es que mientras esta trabajando el bucle me cuelga el explorador.. hice la prueba poniendo alerts en el bucle para saber si la barra de progreso funcionaba y funciona bien.. hay alguna manera de hacer algo para uqe esto no pase.. que trabaje de fondo el bucle o que me deje seguir haciendo otras cosas mientras esta trabajando?

les paso y muestro el script:

Código PHP:
<script>
//------ AJAX -----\\
function getDataServer(urlvars){
     var 
_xmlhttp null;
     try{
         
_xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
     }catch(
expeption){
         
_xmlhttp = new XMLHttpRequest();
     }
     
_xmlhttp.open("GET",url varsfalse);
     
_xmlhttp.send(null);
     if(
_xmlhttp.status == 404alert("Url no valida");
     return 
_xmlhttp.responseText;
}
//------ FIN AJAX -----\\

var id;
var 
viejo;
var 
nuevo;
function 
activar (total){
//var activar = function (total){
    
for (x=1x<total+1x++){
//        alert(document.getElementById("ID_"+x).value);
        
id document.getElementById("ID_"+x).value;
        
viejo document.getElementById("OLD_"+id).value;
        
nuevo document.getElementById("PR_"+id).value;
        
        var 
consulta getDataServer("./_scripts/get_art.php","?ModPrecioID="+id+"&p_viejo="+viejo+"&p_nuevo="+nuevo);
        if(
consulta){
            
Porcentaje (xtotal);    
        }else{
            
alert("Error item "+id);
            
Porcentaje (xtotal);
        }
        
//break;
        //continue;
        //setTimeout(activar, 1000);

    
//-- fin for
}

function 
Porcentaje (xtotal){
    var 
porciento Math.round(100 total); 
    
ancho porciento 92 100//porcentaje * anche de imagen / 100 = pixels
    
document.getElementById('progresoIMG').style.width ancho "px";
    
document.getElementById('progresoTexto').innerHTML porciento "%";
}
</script> 
muchas gracias y espero que puedan ayudarme..