No puedo por la vida de a conseguir una película de Flash para responder a Javascript en Firefox 2.
Ive intentado usar una variable en _root
Viendo que la variable
var callB:Function = function(prop, newval, oldval):Number {
doSomthingWithNewval(parseInt(newval));
return parseInt(newval);
}
this.watch("myVar", callB);
- var callB:Function = function(prop, newval, oldval):Number {
- doSomthingWithNewval(parseInt(newval));
- return parseInt(newval);
- }
- this.watch("myVar", callB);
Uso setVariable en JS
function getSWF(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
}
else {
return document[movieName];
}
}
getSWF('myMovie').setVariable('myVar', '0x123456');
- function getSWF(movieName) {
- if (navigator.appName.indexOf("Microsoft") != -1) {
- return window[movieName];
- }
- else {
- return document[movieName];
- }
- }
- getSWF('myMovie').setVariable('myVar', '0x123456');
Que funciona en Internet Explorer.
Ive intentado usar "mx.external.ExternalInterface.addCallback"
var callB:Function = function(par):Void {
// Stuff
}
ExternalInterface.addCallback("swfSetTheme", null, callB);
- var callB:Function = function(par):Void {
- // Stuff
- }
- ExternalInterface.addCallback("swfSetTheme", null, callB);
La llamada al método registrado con JS
function getSWF(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
}
else {
return document[movieName];
}
}
getSWF('myMovie').swfSetTheme(myVar);
- function getSWF(movieName) {
- if (navigator.appName.indexOf("Microsoft") != -1) {
- return window[movieName];
- }
- else {
- return document[movieName];
- }
- }
- getSWF('myMovie').swfSetTheme(myVar);
Que funciona en Internet Explorer y Opera.
Im usando "AC_FL_RunContent" para mostrar el SWF, heres lo que parece.
Observe el uso de "allowScriptAccess" & "swliveconnect".
AC_FL_RunContent('id','myMovie', 'name','myMovie', 'src','/portal/e107_themes/Tech9/tech9', 'movie','/portal/e107_themes/Tech9/tech9', 'width','600', 'height','180', 'allowScriptAccess','sameDomain', 'swLiveConnect','true', 'quality','high', 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0','pluginspage','http://www.macromedia.com/go/getflashplayer');
La "llamada" método de "ExternalInterface" funciona sin problemas en Firefox, pueden obtener Flash para llamar a un método de JS y recibir un valor de retorno sin problemas.
Yo no he sido capaz de conseguir JS hablar con Flash sin embargo, incluso si no quiere un valor de retorno.
Todo esto tiene que ver con la sincronización de la colorschemes entre el SWF y HTML / CSS.
Cuando la película comienza, este usa "ExternalInterface.call" para leer la misma cookie y erigirse como JS lee a erigirse.
JS se usa para cambiar el colorschemes en tiempo de ejecución, así que tengo que ser capaz de tener JS hablar con Flash.
Strong with this one, the sudo is.