当前位置:  开发笔记 > 编程语言 > 正文

as3 与js相互通信

1.as和js通讯实例如果as3调用JAVAscript中的函数直接在as中添加if(ExternalInterface.available){ExternalInterface.call("sendToJavaScript",value);}ExternalInterface.available主

1.as和js通讯实例
如果as3调用JAVAscript 中的函数直接在as中添加
if (ExternalInterface.available) {
      ExternalInterface.call("sendToJavaScript",value);
     }
ExternalInterface.available主要判断播放器是否位于提供外部接口的容器中,如果swf在不在网页中, ExternalInterface.call向外部api传递参数
sendToJavaScript 就是js中的函数名(自定义) value 是你穿过来变量或值
结下来你可以试着在网页中添加一个
这样flash中的value就会以alert弹出 这只是实现了第一步 ,当然做的时候建议用try抛出错误在测试

2.js和as通讯实例
在网页中写入





  

注意flash动画名称 包括网页中flash在objct 中id也必须是flash的名称 王成了网页接下来看as3

if (ExternalInterface.available) {
     try {
      ExternalInterface.addCallback("sendToActionScript", receivedFromJavaScript);
     } catch (e:Error) {
      trace(e.message)}
    } else {
trace("External interface is not available for this container.");
    }//End if

注意的是我们在做开发的时候可能直接在结束游戏过程中发送个请求掉用js js处理请求在返回个结果 这样其实flash读不出来 当然你可以做一个按钮请求 肯能as事件机制问题,
还有就是   thisMovie("flash动画名称").sendToActionScript(value); 不能写在上面的 sendToJavaScript(value)的后面必须单独写个函数,然后调用这个函数

 

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有