是否有可能使用ExternalInterface调用从Flash(AS3)为JavaScript发送阵列?
我目前是从调用一个函数多次“每个”内循环的Flash,但它过得太快了JavaScript来跟上。
我的想法是创建属性的数组,传递给JavaScript函数,然后遍历,在JavaScript的。
谢谢,乔希
是否有可能使用ExternalInterface调用从Flash(AS3)为JavaScript发送阵列?
我目前是从调用一个函数多次“每个”内循环的Flash,但它过得太快了JavaScript来跟上。
我的想法是创建属性的数组,传递给JavaScript函数,然后遍历,在JavaScript的。
谢谢,乔希
另外,使用JSON的建议,这应该是小数组更快,将不要求使用eval或外部库来解析的。 加入在闪光灯这样的字符串数组:
物品1 | ITEM2 |项目3 | ITEM4
将字符串传递给JS和采用分体式再次分裂它(“|”)
是的,这是可能的。
http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html#call()
...参数 - 将参数传递给在容器中的功能。 您可以指定零个或多个参数,请用逗号分隔。 它们可以是任何ActionScript数据类型。 当呼叫是对一个JavaScript函数,ActionScript类型自动转换到JavaScript类型; 如果调用的是某个其它ActiveX容器中,所述参数被编码在所述请求消息。
快速测试:
AS代码:
if(ExternalInterface.available) {
ExternalInterface.call("jsTest", [0,1,"two",{a:1,b:2}]);
}
JS代码:
function jsTest(arg) {
alert(arg);
}
你总是可以创建一个JSON对象并将其传递给JavaScript。