Hola zerokilled, intente aplicar al codigo lo que me dijistes pero no se si hice algo mal pero los intervalos no funcionan bien, creo que no se detienen, te muestro los cambios por si quieres ayudarme.
Código Javascript
:
Ver original<script type="text/javascript">
var pos=0;
var tiempo=null;
var xml=null;
function recuperarEmpreados() {
var http = objetoAjax();
http.open('get','archivo.xml');
http.onreadystatechange = function() {
if(http.readyState == 4){
if (http.status==200){
xml=http.responseXML;
if(xml.getElementsByTagName('empreado').length > 0){
var tiempo=setInterval(datosEmpreados,1000);
}
}
}
}
http.send(null);
}
function datosEmpreados(){
if(xml.getElementsByTagName('empreado').length>0){
document.getElementById("empreados").innerHTML ='<p>'+xml.getElementsByTagName('empreado')[pos].firstChild.nodeValue+'</p>';
pos++;
if(pos>=(xml.getElementsByTagName('title').length)){pos = 0}
}
}
function recuperarXML(dato) {
var peticion=objetoAjax();
peticion.open("get","recuperar_datos.php?seccion=" + dato , true);
peticion.onreadystatechange = function() {
if (peticion.readyState == 4 && (peticion.status == 200 || peticion.status == 501)){
clearInterval(tiempo);
document.getElementById('recuperar').innerHTML=peticion.responseText;
recuperarEmpreados();
}
}
peticion.send(null);
}
</script>
En fin cuando cargo la pagina el intervalo funciona bien pero al cambiar el xml, ya no cumple el intervalo que deberia, saludos.