Comunidad de diseño web y desarrollo en internet online

Problema con eventos al subir el SWF al servidor.

Citar            
MensajeEscrito el 05 Sep 2008 09:02 am
Bueno, siento mucho que mi primer mensaje sea para pedir ayuda pero la verdad es que ya estoy desesperado.
Os cuento, tengo un SWF que carga unas imágenes a través de un XML y según las imágenes que hay duplica un clip de pelicula que que digamos que es una especie de "marco" de cada imagen. Cuando lo ejecuto localmente, el SWF carga perfectamente las imágenes, el problema es cuando lo subo a mi servidor (servidor de Hostalia), entonces no carga las imagenes. Testeandólo en el servidor, he comprobado que el listener que ejecuta el evento cuando se completa la carga nunca se ejecuta:

Código :

cargaImg.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);


Mi pregunta es, ¿es fallo de código o es un problema del servidor?

Os pego aquí el código para ver si estoy haciendo algo mal:

Código :

function cargador() 
{
    var cargaImg:Loader = new Loader();
    cargaImg.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
    var cargaRef:Loader = new Loader();
    var request:URLRequest = new URLRequest(flashmo_xml.imgs[imagenActual].img);
    cargaImg.load(request);
    cargaRef.load(request);
    tn_group.tn.visible=false;
    var mini:claseTN = new claseTN();
    mini.name="mini"+imagenActual;
    tn_group.addChild(mini);
    mini.x=imagenActual*(tn_group.tn.width + tn_spacing);
    mini.y=tn_group.tn.y;
    mini.tn_pic.addChild(cargaImg);
    mini.tn_pic2.addChild(cargaRef);
    mini.tn_pic.alpha = tn_alpha_default;
    mini.tn_no = imagenActual;
    mini.tn_button.addEventListener(MouseEvent.CLICK, Click);    
    function Click(event:Event):void{
   //getURL(photo_url[this._parent.tn_no]);
   navigateToURL(new URLRequest(photo_url[mini.tn_no]));
    }
    mini.tn_button.addEventListener(MouseEvent.MOUSE_OVER, Entrar);    
    function Entrar(event:Event):void{
   mini.tn_pic.alpha = 70;
   info.text=photo_url[mini.tn_no];
   trabajo.text=photo_desc[mini.tn_no];
   }
   mini.tn_button.addEventListener(MouseEvent.MOUSE_OUT, Salir);    
   function Salir(event:Event):void{
   mini.tn_pic.alpha = tn_alpha_default;
   info.text = "";
   trabajo.text="";
   }
}

function completeHandler(event:Event):void 
{
    imagenActual++;
    if(imagenActual<imagenTotal)
    {
        cargador();
    }
    else
    {
        var loader:Loader = new Loader();
        loader.unload();
    }
}

Por nespe

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Sep 2008 09:58 am
Hay un foro específico de AS3, en este disminuyen las posibilidades de que alguien te conteste sobre este tema.

El evento nunca se ejecuta porque nunca logra cargar la imagen, de que forma llamas al XML? Postea la porción del código en que lo haces.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 05 Sep 2008 10:05 am
Ok, a ver si algún moderador me lo mueve para allí

Este es el código del XML:

Código :

var filepath = "img/";
var imagenActual:Number = 0;
var imagenTotal:Number = 0;
var num_nodo:Number = 0;
var flashmo_xml:XML = new XML();
var XML_URL:String = filepath + "Links.xml";
var miXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(miXMLURL);
myLoader.addEventListener("complete", xmlLoaded);

function xmlLoaded(event:Event):void
{
flashmo_xml = XML(myLoader.data);
imagenTotal=flashmo_xml.descendants("imgs").length();
//cargador();
for(num_nodo=0; num_nodo<imagenTotal; num_nodo++){
photo_thumbnail.push(flashmo_xml.imgs[num_nodo].img);
photo_url.push(flashmo_xml.imgs[num_nodo].link);
photo_desc.push(flashmo_xml.imgs[num_nodo].desc);
}
} 

Por nespe

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Sep 2008 10:25 am
Me imagino, aunque no lo veo reflejado en el evento de complete de la carga del XML, que hasta que este no cargue el XML no empieces a llamar a las demás funciones. Si estás esperando por la carga del XML para hacer lo demás no debería haber problemas por este lado, entonces intenta esto otro:

cambia el filepath, en vez de:

Código ActionScript :

var filepath = "img/";


Sea algo como:

Código ActionScript :

var filepath = "http://www.tusitio.com/img/";

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 05 Sep 2008 02:47 pm
El XML lo carga completo, y las rutas también las coge bien, el problema es ese, que es como si no lanzase los listeners del contentLoaderInfo

Por nespe

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Sep 2008 03:58 pm
Muy raro, solo puedo decirte que intentes otra cosa:

Crea un evento de:

Código ActionScript :

cargaImg.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, herrorHandler);


y mira a ver si se ejecuta, si se ejecuta entonces hay que buscar el problema en otro sitio. Por otro lado, como estás testeando desde el explorador que el evento se ejecuta o no?

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 05 Sep 2008 04:23 pm
Gran idea, no se me había ocurrido. Acabo de probarlo y localmente no entra en la función de error, pero al subirlo al server si que entra en ella y me el error que me sale es este: "Error #2035" , a ver si lo localizo mirando en la ayuda.
Para testear utilizo ExternalInterface para lanzar una ventana javascript y lo coloco dentro de la función que quiero comprobar que falla o no.

Código :

ExternalInterface.call("alert", errorEvent.text);

Por nespe

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Sep 2008 04:48 pm
Ese herror es que no encontró la url, prueba que no sea cosa de rutas, recuerda que la ruta debe ser respecto al html y no al flash. Te pregunté del método para testear para saber si realmente estabas segura de que no se estaba lanzando.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 05 Sep 2008 05:08 pm
Vale, ya está solucionado, era problema de las rutas del XML

Un saludo y gracias

Por nespe

5 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.