1、使用 ExternalInterface apihtml
1.as调用js,as给js发送参数数据api
as代码:app
// as向js发出 方法名+参数 ExternalInterface.call(functionName:String, ...parameters:*) 方法名是字符串,参数能够是任何数据类型 if(ExternalInterface.available) {
ExternalInterface.call("onSetDataToJs", “as经过ExternalInterface.call方法向js传递参数”);
}
js代码:函数
function onSetDataToJs(value) { console.log("此方法被as调用:"+value); }
2.js调用as代码,js给as发送参数数据spa
js代码:code
setDataToAs(); function setDataToAs() { var flash = getMovieName("sco_flash") // sco_flash是嵌入在html里的flash的id flash.onJsToAs("js传参给as"); } //获取此页面加载FLASH对象名称 function getMovieName(movieName) { if (window.document[movieName]) { return window.document[movieName]; }else if (navigator.appName.indexOf("Microsoft")==-1) { if (document.embeds && document.embeds[movieName]) return document.embeds[movieName]; }else{ return document.getElementById(movieName); } };
as代码:htm
// as监听js发来的 方法名,而后经过回调函数接收参数 ExternalInterface.addCallback(functionName:String, closure:Function) 方法名是字符串,回调一个函数 if(ExternalInterface.available) { ExternalInterface.addCallback("onJsToAs",onJsToAs); } function onJsToAs(str:*) { trace(str); }
2、使用 fscommand api对象
1.as调用js,as给js发送参数数据blog
as代码:字符串
// as向js发出 方法名+参数 fscommand(command:String, args:String="") 命令是字符串,参数也只能是字符串 fscommand("onSetDataToJs", “as经过fscommand方法向js传递参数”);
js代码:
function onSetDataToJs(value) { console.log("此方法被as调用:"+value); }