ActionScript和JavaScript之间的互相调用
ActionScript和JavaScript之间的互相调用
简单说说在开发Flex程序时,AS与JS通讯的问题
1、AS调用JS
AS调JS的方法很简单,直接使用ExternalInterface.call这个方法就可以直接调用了。
如:
2、JS调用AS
JS调用AS,需要先在AS中ExternalInterface.addCallback来增加回调函数。
如:
第一个参数是JS需要调用的函数名,第二个参数是这个函数被调用时回调到哪个函数。
增加回调函数和回调函数写好后,AS部分算是完成了,然后就是JS部分的内容了。
首先在HTML中找到嵌入flash的object标签,找到这个object标签的id,
然后直接使用id.functionName的方式来调用AS中的函数。
示例代码:
简单说说在开发Flex程序时,AS与JS通讯的问题
1、AS调用JS
AS调JS的方法很简单,直接使用ExternalInterface.call这个方法就可以直接调用了。
如:
ExternalInterface.call('alert','1901');
第一个参数是Js的函数名,第二个参数是函数所需的参数。
2、JS调用AS
JS调用AS,需要先在AS中ExternalInterface.addCallback来增加回调函数。
如:
ExternalInterface.addCallback("function1", callback1);
增加回调函数和回调函数写好后,AS部分算是完成了,然后就是JS部分的内容了。
首先在HTML中找到嵌入flash的object标签,找到这个object标签的id,
然后直接使用id.functionName的方式来调用AS中的函数。
示例代码:
function invokeFlexFunctions()
{
// test为嵌入flash的object标签的id
test.function1();
test.function2("hello,1901!~");
alert(test.function3());
}
{
// test为嵌入flash的object标签的id
test.function1();
test.function2("hello,1901!~");
alert(test.function3());
}
补充一个,如果需要在页面关闭的时候调用AS中的某一个方法可以使用下面这个方法:
window.onbeforeunload=function()
{
alert(test.function3());
}
{
alert(test.function3());
}
====================================================================
觉得我说的不清楚的可以下载文末的附件直接看示例代码。
--kaixuan's cnblogs