Ver Mensaje Individual
  #14 (permalink)  
Antiguo 03/03/2008, 05:36
Avatar de metacortex
metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 20 años, 6 meses
Puntos: 832
Re: Un script para darle un preload al index

Gracias por ese dato de los inicios() ;). Lo aplicaré apenas termine con esto.

El script ya funciona perfecto. En algún lugar había dejado un paréntesis o coma de más y por eso se estancaba . Ahora anda fino.

Estuve casi toda la madrugada en esto. Al menos logré entender un poco más el script y saber por dónde vienen los disparos. Sin embargo me quedan dos dudas al respecto:

1.- Cada caja de noticias tiene un botón que quisiera habilitar para recargar los artículos individualmente ¿Cómo podría ser ese enlace teniendo en cuenta que cada caja necesita actualizarse individualmente?. La intención es que el usuario haga clic y sólo se recargue la caja que éste quiere, en lugar de recargarse todas.

2.- Noté la ausencia del preloader y de verdad lo necesito porque pienso asignarlo a un botón por razones de usabilidad, ya que me parece importante que el usuario esté al tanto del estado de carga, debido a lo que se tardan los servidores externos en devolver el resultado. Efectué una modificación para agregarlo y casi funciona :

Código PHP:
function Cargar(urlcapaprel){
var 
contenidopreloader;
contenido document.getElementById(capa);
preloader document.getElementById(prel);
ajax= new NuevoAjax(); 
ajax.open("GET"urltrue); 
ajax.onreadystatechange=function(){
        if(
ajax.readyState==1){
                
preloader.innerHTML "Cargando Servidor";
                
preloader.style.background "url('imagenes/ajax-loader.gif') no-repeat";
        }else if(
ajax.readyState==4){
                        if(
ajax.status==200){
                                
contenido.innerHTML ajax.responseText;
                                
preloader.innerHTML "Cargado";
                                
preloader.style.background "none";
                
inicio();
                        }else if(
ajax.status==404){
                                
preloader.innerHTML "La página no existe";
                        }else{
                                
preloader.innerHTML "Error:".ajax.status
                        }
                }
        }
        
ajax.send(null);
}  
function 
actua(urlcapaprel)    {
    
this.url url;
    
this.capa capa;
    
this.prel prel;
}


carga = new Array();

cargaActual 0;
carga[0] = new actua("data/aporrea.php""capa1""prel1");
carga[1] = new actua("data/mundial.php""capa2""prel2"); 
Seguramente el error está en cómo puse la función. Creo que el "prel" está mal declarado (después de carga[].capa):
Código PHP:
function inicio() {
    if (
cargaActual carga.length)    Cargar(carga[cargaActual].urlcarga[cargaActual++].capacarga[cargaActual++].prel);
}
window.onload=inicio
Supongo que ese ++ es un post incremento como en php, pero de javascript no me pregunten porque estoy bajo cero . Si es así, veo que carga[].url tiene un valor y carga[].capa se incrementa a 1. Estuve buscando la manera de incrementar carga[].prel a 1+1 y no lo logré ¿Es esa la solución?.