Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/11/2009, 15:58
kbmaster
 
Fecha de Ingreso: julio-2009
Mensajes: 42
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Precarga de imagenes y ajax

En realidad es mas complicado porq la interface q estoy construyendo gestiona mensajes para un sistema q ya esta en funcionamiento actualmente y solo cuento con un api predefinida para realizar las consultas asi q no se cuales son las imagenes hasta q realizo la consulta ayax; posteo a continuacion algunas soluciones con las q he experimentado por si a alguien le sirve:

precarga directa de imagenes

preloadImages:function(args)
{
result=this.content.indexOf(args.searchvalue,args. fromindex);

if(result!=-1 )
{
end=this.content.indexOf(' ',result);
src=this.content.substring(result+5,end-1);
args.max++;
args.fromindex=end;
img=new Image();
img.onload=function(){this.preloadImages(args);}.b ind(this);
img.onerror=function(){this.preloadImages(args);}. bind(this);
img.src=src;
}else
{
args.callback();
}

},
despes de la consulta ajax llamo a este metodo con los siguientes argumentos:

args.searchvalue='src='// el atributo src de la img
args.fromindex=0;// el indice en la cadena response text desde la q se realiza la busqueda
args.callback= function //funcion q se ejecuta al terminar la precarga

Esta funcion funciona recursivamente cargando todas las imagenes a las que se hace referencia en resposeText de la consulta ajax; notese q la llamada recursiva solo se realiza cuando la imagen esta completamente cargada mediente el evento onload, asi me aseguro q al renderear el resultado final todas las imagenes estan cargadas.