2012-02-20 36 views
1

我有一个窗口化的Flex应用程序(AIR),它为UI使用了一个HTML文件,但我有一些Flex代码需要在页面加载时执行。如何在Javascript和Flex之间进行通信?

我已经使用< mx:HTML />标记将HTML界面导入到应用程序中。 Adobe帮助http://livedocs.adobe.com/flex/3/html/help.html?content=passingarguments_5.html显示了一种在javascript和flex之间进行通信的方法,但前提是您在浏览器中使用外部HTML文件,而不是在窗口应用程序中使用。

所以我的问题是这样的:我如何从JavaScript的Flex方法调用,将返回窗口/ AIR应用程序中的数据?

任何帮助将不胜感激,因为我对flex/flash非常陌生。

回答

1

它也应该在窗口应用程序中工作。使用ExternalInterface的

的Flex - > JS

ExternalInterface.call("jsFunction", {par:value}); 

JS - > Flex的

flashObject = document.getElementById(flashid); 

if(flashObject) { 
    flashObject.flexMethod("par"); 
} else { 
    alert('Error! could not get flash object'); 
} 

http://livedocs.adobe.com/flex/3/html/help.html?content=passingarguments_4.html

+0

向下投票,因为显然WindowedApplication不能嵌入HTML页面,所以显然不能调用ExternalInterface,正如原始海报所述。 – 2012-02-20 16:06:05

+0

好的,对不起,关于术语“窗口化的应用程序”并不清楚 - 认为它可能像iframe一样:/ !!! – Ixx 2012-02-20 16:15:46

相关问题