知识大全 AS3与JS之间的简单自定义参数通讯
Posted 函数
篇首语:人生难得几回搏,此时不搏待何时。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 AS3与JS之间的简单自定义参数通讯相关的知识,希望对你有一定的参考价值。
AS3与JS之间的简单自定义参数通讯 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
一直没去深入研究下AS 与JS的交互开发也就是SWF在中的通信 最近出于项目要求被迫投入了 也在这里做个汇总
一:HTML中最快速的传值方式
在HTML中插SWF时 可以跟个参数 比如:
files/home swf?id=” ″
在AS 里可以这样去接收
var id:String=stage loaderInfo parameters["id"]; 这种传值方式其实AS 的时候也是这样做的 到AS 时使用parameters 属性替换了AS 和 提供SWF文件参数作为主时间轴的技术 所以我们改用一下AS 的取值方式就行了
这种方式只能是单边一次性传值 有时候会用得到 但需要与JS相互通信就不行了 还有 只能接收字符串
二:使用外部通信接口ExternalInterface
这也是AS 时代进化来的 目前公认的最靠谱的通信方式
使用方法:
JS调用AS 的函数
确定JS调用AS 之前 要在AS 中绑定调用函数 也就是说 只有AS 答应给的方法JS才能调用
使用:ExternalInterface addCallback(functionName:String closure:Function):void有两个参数:
functionName:String — 容器可用于调用函数的名称
closure:Function — 要调用的 closure 函数 这可能是一个独立的函数 或者可能是引用对象实例方法
ExternalInterface addCallback("getASVars" getASFun); private function getASFun(value:String):void //得到JS传来的值:value
好了 可以在JS中去调用这个方法了 调用前还要先取得插进HTML的SWF的ID 我们在HTML中不管用什么方式插都可以设置ID
例如先通过id为”mov”来获取对象 再调用上面绑定的方法:
代码如下: function thisMovie(movieName) if (navigator appName indexOf("Microsoft") != ) return window[movieName]; else return document[movieName]; thisMovie("mov") getASVars(value); AS 调用JS的函数AS 调JS直接使用call就行了
使用:ExternalInterface call(functionName:String … arguments):*
这个方法有两个参数
functionName:String — 要在容器中调用的函数的名称
… arguments — 传递到容器中的函数的参数 您可以指定零个或多个参数 参数之间用逗号分隔 这些参数可以是任何 ActionScript 数据类型 当调用 JavaScript 函数时 ActionScript 类型自动封装到 JavaScript 类型中;当调用其它某个 ActiveX 容器时 将在请求消息中对参数进行编码
例如:
代码如下: ExternalInterface call("setToJS" "paramTest"); //在JS中编写这个setToJS的函数 function senToJS(value) alert(value)//输出:paramTest看起来很爽 但也不是完全靠谱 这个接口还是会挑食的 只有在以下浏览器中才支持: 浏览器 操作系统 操作系统 Internet Explorer 及更高版本 Windows Netscape 及更高版本 Windows Macintosh Mozilla 及更高版本 Windows Macintosh Firefox 及更高版本 Windows Macintosh Safari 及更高版本 Macintosh 还有个安全沙箱的问题 如果出现安全沙箱警报 可以使用以下两种修正方法: 在包含 HTML 页中的 SWF 文件的 object 标签中 设置以下参数 在 SWF 文件中 添加以下 ActionScript
代码如下: Flash system Security allowDomain(sourceDomain)cha138/Article/program/Java/JSP/201311/20074
相关参考
自定义事件实现不同窗体间的通讯C#篇 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C#中的事件
知识大全 JS自定义函式语法,doLoginCas:function ()} : 号什么意思
JS自定义函式语法,doLoginCas:function()}:号什么意思?和我们平常定义functionzz()区别? 以下文字资料是由(全榜网网www.lishixinzh
JS特效代码--让select控件可以自定义边框 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!li
普通打印(整页打)打印网页内部分内容(自定义)打印去掉/添加页眉页脚使用外部控件/方法实现多功能打印打印背景 以上为代码控制 设置“页面设置”实现打印参数设置(Window系统图文版) 一普
知识大全 Oracle中自定义函数 无参数 输入参数 输出参数
Oracle中自定义函数无参数输入参数输出参数 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lis
Java自定义简单标签实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Java自定义简单标签可以
在应用程序开发中可以通过函数来提高系统的性能与代码的重复利用在SQLServer数据库中也可以通过自定义函数来提高服务器的性能用户自定义函数可以从外部接受必要的参数并在内部执行一些复杂的操作最后返
一个简单JAVA网络通讯录 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 定义一个简单的JAVA
一个简单的自定义ClassLoader的实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 很多
JQuery的自定义事件代码,触发,绑定简单实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!下面