[转载]Flex与javascript通信

[转载]Flex与javascript通信 - 英雄小强 - 博客园.

首先列出代码部分,我们可以先尝试的感受一下效果:

1.Flex代码部分:文件名为Flex_Javascript.mxml
[xml]

[/xml]

2.Javascript代码部分:将以下代码添加到index.template.html里面(为什么要添加到index.template.html里面呢?因为index.template.html里面的代码会自动添加到Flex自动生成的HTML文件中)。
[js]


[/js]

3.修改Flash的大小,否则看不到HTML里面添加的按钮Button,我这里改为400X300
[js]
swfobject.embedSWF("${swf}.swf", "flashContent", "400", "300",
swfVersionStr, xiSwfUrlStr, flashvars, params, attributes);
[/js]
这里稍微解释一下,不多说,你懂的:

1.Flex里面使用ExternalInterface.call("Js函数名称",参数)进行调用javascript方法,其返回的值就是Js函数所返回的值。

2.在init方法中使用ExternalInterface.addCallback("注册的方法名",As中的函数名)进行注册,“注册的方法名”可以再javascript中直接调用

3.在js中,就可以用document.getElementById("Flash在Html中的ID").注册的方法名(参数)进行调用,当然,默认"Flash在Html中的ID"就是Flex文件的名称,例如,我们这里就是Flex_Javascript,因为我们的Flex文件就是Flex_Javascript.mxml

注:本文章部分内容可能引用于网络,本人进行修改或注释,希望能够帮到更多的人。 作者 姓名:英雄小强 邮箱:hero88821@qq.com QQ :659406804 MSN:hero821@msn.cn