AS和JS通信,Flash和Html通信
2017-05-07 17:25
253 查看
一、使用 ExternalInterface api
1.as调用js,as给js发送参数数据
as代码:
js代码:
2.js调用as代码,js给as发送参数数据
js代码:
as代码:
二、使用 fscommand api
1.as调用js,as给js发送参数数据
as代码:
js代码:
1.as调用js,as给js发送参数数据
as代码:
// 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发送参数数据
js代码:
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代码:
// as监听js发来的 方法名,然后通过回调函数接收参数 ExternalInterface.addCallback(functionName:String, closure:Function) 方法名是字符串,回调一个函数 if(ExternalInterface.available) { ExternalInterface.addCallback("onJsToAs",onJsToAs); } function onJsToAs(str:*) { trace(str); }
二、使用 fscommand api
1.as调用js,as给js发送参数数据
as代码:
// as向js发出 方法名+参数 fscommand(command:String, args:String="") 命令是字符串,参数也只能是字符串 fscommand("onSetDataToJs", “as通过fscommand方法向js传递参数”);
js代码:
function onSetDataToJs(value) { console.log("此方法被as调用:"+value); }
相关文章推荐
- JS/AS(Flash)通信失效的可能原因
- flash as 与js通信(转)
- Flash P2P 通信技巧(AS-Java-AS)
- AS与JS相互通信(Flex中调用js函数)
- FlashSocke 通过flash进行socket通信(as代码)
- FLASH与JS通信简单实例
- JS与Flash的通信原理
- Flash P2P 通信技巧(AS - Java - AS)
- AS与JS相互通信(Flex中调用js函数)
- JS与AS之间的相互通信
- JS与flash交互通信控制的方法
- flash与js的通信
- FLASH与JS通信简单实例
- AS与JS相互通信(Flex中调用js函数)
- As和js通信问题完全解析(解决addcallback失效的问题)
- Flash P2P 通信技巧 (AS-Java-AS)
- Flash 和Js通信 null为空或不是对象
- AS和JS在Maxthon、TT等浏览器无法通信的问题
- Flash P2P 通信技巧(AS-Java-AS)
- flash和js通信实例