Se que hay muchos temas como este, pero este es distinto.
Veamos, aqui tengo el codigo para hacer esto posible:
Código:
<script language="javascript" type="text/javascript"> var RequestObject = false; var Archivo = 'reload.php'; // Archivo a actualizar window.setInterval("actualizacion_reloj()", 1000); // el tiempo X que tardará en actualizarse if (window.XMLHttpRequest) // RequestObject = new XMLHttpRequest(); if (window.ActiveXObject) RequestObject = new ActiveXObject("Microsoft.XMLHTTP"); function ReqChange() { // Si se ha recibido la información correctamente if (RequestObject.readyState==4) { // si la información es válida if (RequestObject.responseText.indexOf('invalid') == -1) { // obtener la respuesta var msgs = RequestObject.responseText.split('|'); // Buscamos la div con id online document.getElementById("online").innerHTML = msgs[0]; } else { // Por si hay algun error document.getElementById("online").innerHTML = "Error llamando"; } } } function llamandonline() { // Mensaje a mostrar mientras se obtiene la información remota... document.getElementById("online").innerHTML = ""; // Preparamos la obtención de datos RequestObject.open("GET", Archivo , true); RequestObject.onreadystatechange = ReqChange; // Enviamos RequestObject.send(null); } function actualizacion_reloj() { llamandonline(); } </script>
Código HTML:
<div id="online">AQUI VA EL ARCHIVO QUE SE RECARGA</div>
Querria dos cosas,
1) Si lo que hay dentro del DIV es igual a la de la recarga, que no refresque ésta.
He probado con
Código:
Pero no tuve suerte, a ver si ustedes me lo resuelven.if( document.getElementById("online").innerHTML !== msgs[0] ){ document.getElementById("online").innerHTML = msgs[0]; }
2) Que refresque cuando tenga definitivamente cargado el archivo, porque parpadea y no deberia si el ReadyState está en 4.
Si el segundo no puede resolverse, que le vamos a hacer =( fallo de las programaciones.
Un saludo y muchas gracias.