2010-04-16 74 views

回答

5

假设你在你的SWF有闪光灯功能,这样的:

// AS3 code in swf 
function myfunction():void 
{ 
    // Do something useful 
} 

你可以将它呈现给JavaScript中包含您的SWF这样的页面:

// AS3 code in swf 
ExternalInterface.addCallback("myfunction", myfunction); 

然后从JavaScript你可以这样称呼它:

// JavaScript code in browser 
var swf = window.getElementById("myswf"); 
swf.myfunction(); 

在你的情况下,你可以调用你想从myfunctio运行的代码N()。

+0

谢谢,我会考虑它。 – Somebody 2010-04-16 15:32:18

1

是的,通过ExternalInterface类。

3

尽管ExternalInterface可以从JavaScript调用ActionScript函数,但我认为它不适用于打开文件浏览器和上传文件。

出于安全原因,Flash Player中的文件上传功能只能由用户交互触发,例如在Flash中单击按钮。这是从Flash Player 10中引入,并打破了很多的文件上传解决方案,如SWFUpload的和其他人:

http://www.bit-101.com/blog/?p=1382