Comunidad de diseño web y desarrollo en internet online

Problema al ejecutar función Flash desde Javascript

Citar            
MensajeEscrito el 24 Sep 2010 07:03 pm
Hola, estoy haciendo una web utilizando un menú Flash que interactua con Ajax, el problema viene cuando desde Javascript necesito ejecutar una función interna del Flash. Tanto en Chrome como en IE 8 funciona sin problemas, pero en Firefox no consigo acceder a la función. Utilizo el plugin Firebug como debug y siempre devuelve el error:

obj.setBoton1 is not a function

No estoy seguro de si no consigue acceder al objeto Flash o a la función interna, pero al hacer un breakpoint en esa linea y mirar el contenido de la variable "obj", que previamente ha sido asignada al objeto Flash haciendo referencia a él mediante "getElementById", obtengo algo como esto:

+obj object#flash

El signo de "+" corresponde al icono que permite desplegarlo, ya que al ser un objeto, se puede acceder a sus propiedades y métodos internos, pero en estos métodos tampoco aparecen las funciones internas que deberían estar accesibles, aunque no estoy seguro de si deberían aparecer puesto que quizás el plugin no está preparado para mostrar funciones personalizadas.

¿Alguien sabe donde puede estar el problema? Gracias.

Saludos.

Por Scorpin

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 25 Sep 2010 01:05 am
ExternalInterface.addCallback

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 25 Sep 2010 12:25 pm
Si, así es como lo tengo puesto, por eso funciona bien tanto en Chrome como en IE, tengo un callback por cada función interna, pero no consigue acceder a ninguna de ellas desde Firefox.

Por Scorpin

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Oct 2010 09:50 pm
Lo subo y añado más información por si no estaba claro.

Uso AS2, la clase ExternalInterface como he dicho para exponer las funciones a Javascript, pero no consigo hacer referencia a ellas, Javascript siempre devuelve que la función no existe. Este es el código Flash:

import flash.external.*;
System.security.allowDomain("*");

ExternalInterface.addCallback("setBoton0", null, setBoton0);
function setBoton0() {
...
}

Tengo 5 funciones y callbacks respectivos, solo pongo uno para no repetir, pero son todos iguales, exceptuando el nombre.

Os agradecería cualquier ayuda o idea, imagino que nadie tiene problemas al acceder a funciones dentro de Flash en Firefox, sino habría habido bastantes quejas o hilos sobre el asunto, y apenas veo ninguno así que algo debo de estar haciendo mal.

Saludos.

Por Scorpin

1 de clabLevel



 

chrome

 

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