Ver Mensaje Individual
  #11 (permalink)  
Antiguo 06/02/2008, 11:52
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Re: Refrescar porcentaje de barra de progreso

Probá colocando variando la url con un random a ver si es eso el problema en Firefox, así:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>test</title>
<
style>
#marco{
width:300px;
border:1px solid #000;
}
#barra{
width:0background-color:#F00;
}
</
style>
<
script>
function 
aj(){
    if(
window.XMLHttpRequest){
        return new 
XMLHttpRequest();
    }
    else{
        try{
            return new 
ActiveXObject('Microsoft.XMLHTTP');
        }catch(
e){
            
alert('tu navegador no soporta ajax');
            return 
false;
        }
    }
}
var 
porciento;
function 
rpc(url){
   var 
rpc=aj();
    if(
rpc){
        
rpc.open('GET',url,true);
        
rpc.onreadystatechange=function(){
            if(
rpc.readyState==4){
                
porciento=rpc.responseText;
            }
        }
        
rpc.send(null);
    }
}

function 
progress(porcentaje){
document.getElementById('barra').style.width=porcentaje+'%';
}

window.onload=function(){

var 
pp=setInterval(function(){if(typeof porciento!='undefined')progress(porciento);if(porciento>99){clearInterval(pp);};rpc('procesando.php?'+Math.random());},50);
}
</script>
</head>

<body>
<div id="marco"><div id="barra">&nbsp;</div></div>
</body>
</html> 
En cuanto al porcentaje, creá una capa, asignale un id y usá innerHTML:

Código PHP:
<script>
//esto debe colocarse dentro de la función anónima que llama el setInterval
document.getElementById('capa').innerHTML=porciento;
</script>
<!--esto dentro del html:-->
<div id="capa"></div>