2011-07-14 25 views
5

Estoy tratando de hacer una prueba muy simple para obtener el AS3 ExternalInterface.call() a Javascript console.log() para mí.Flash/AS3: ExternalInterface.call() "¿Por qué no console.log?"

Tengo un SWF simple con AS3 en una capa superior y un botón que desencadena la llamada.

import flash.external.ExternalInterface; 

function log(message:String):void 
{ 
    trace (message); 
    if (ExternalInterface.available) 
    { 
     ExternalInterface.call('console.log', message); 
    } 
} 

button.addEventListener(MouseEvent.CLICK,button_click); 

function button_click(e:MouseEvent):void 
{ 
    log("Hello World"); 
} 

He probado esto en el IDE de Flash para asegurarse de que el clic de botón está rastreando y lo es. He estado probando esto en el último navegador Chrome y Firefox.

¿Estoy haciendo algo fundamentalmente malo?

Respuesta

3

intentado lo mismo! funciona para mi. Asegúrate de que tu código addEventListener esté dentro de una función como creación completa. debería ser.

También se fijan en http://code.google.com/p/flash-thunderbolt/

+0

** Otra posible escollo: ** asegurarse de tener acceso al archivo '.swf' usando' 'http' o https' en el navegador - si se utiliza' file: // 'para el sistema de archivos, esta llamada' ExternalInterface' no parece funcionar (al menos para mí). –