文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>AS与JS通讯

AS与JS通讯

时间:2010-10-14  来源:ayan2006

1.Fscommand

 在网页应用上,FS Command有两大功能。  

(1)能使Flash向脚本语言发送命令。可以是调用脚本语言中的一段函数或传递变量给脚本语言等。  

(2)能使脚本语言(js,vbs)向Flash发送命令。可以是给Flash中定义变量或是直接控制Flash动画的时间线上的跳转或给Flash中定义实体的属性等。  

看到了么?它是这样实现的:  

(1)用Flash作一个简单的按钮,将按钮的Action设为:  

On(Release)  {

FSCommand("alert","Hello,This is FS Command speaking")  

}

(2)将按钮输出为swf,用Dreamweaver插入网页,并起ID名为"button"  

(3)在网页<head>与</head>之间加入:  

<script language=javascript>  

function button_DoFSCommand(command,args)  

{if(command == "alert"){  

alert("Now look at this:"+args);}  

}  

</script>  

<SCRIPT LANGUAGE=VBScript>  

Sub button_FSCommand(ByVal command, ByVal args)  

call button_DoFSCommand(command, args)  

end sub  

</SCRIPT>  

 

下面对(3)点的语法做一些解释:"function ID_DoFSCommand(command,args)"是引用FS Command的一个固定格式,ID就是swf插入网页后起的ID名字。"if(command="")句的后面要填的就是FlashAction中command栏里填写的内容,"args"是个变量,上例中args代表的就是Argument里的内容。"alert"是"JS"函数,作用是输出信息。看到JS语句后面的一段VBS代码了么?这段代码可是非常重要噢,如果你的浏览器是IE的话,这段代码是必不可少的。  

 

3、FS Command之Flash Methods  

Flash Methods指能运行在脚本中并能于Flash沟通的一组特定函数。  

在IE中Flash Methods的格式为:ID.FlashMethods  

我们还是用学习例子的方法来了解Flash Methods的功能和用法吧:  

请点击按钮!看到效果了么?它是这样实现的:  

(1)在Flash中画一个文本框,定义其实体名为get,并设置文本的属性为Multiline(允许换行),Word wrap(边界换行)。  

(2)制作按钮“提交”和“清除”,分别设置action为:  

On(Release)  {

FSCommand("post","")  

On(Release)  {

FSCommand("clear","")  

}

(3)用Dreamweaver将导出的swf插入网页,起ID名为buttonn。  

(4)网页代码中加入:  

<script language=javascript>  

function buttonn_DoFSCommand(command,args)  

{if(command == "post")  

buttonn.SetVariable("_root.get","哈哈!神奇吧?这是JavaScript说的话!~0~")  

else if(command == "clear")  

buttonn.SetVariable("_root.get","")  

}  

</script>  

<SCRIPT LANGUAGE=VBScript>  

Sub buttonn_FSCommand(ByVal command, ByVal args)  

call buttonn_DoFSCommand(command, args)  

end sub  

</SCRIPT> 

2.ExternalInterface 

  ExternalInterface 类是外部 API,在 ActionScript 和 Flash Player 的容器之间实现直接通讯的应用程序编程接口,例如,含有 JavaScript 的 HTML 页。 推荐对所有 JavaScript 与 ActionScript 之间的通信使用 ExternalInterface。 在 HTML 页中使用 JavaScript,可以调用 Flash Player 中的 ActionScript 函数。 ActionScript 函数可以返回一个值,JavaScript 会立即接收它作为该调用的返回值。此功能替代了较旧的 fscommand() 方法。

 

  命名空间:import flash.external.ExternalInterface;   

  两个重要方法:

 addCallback(functionName:String, closure:Function):void 

 call(functionName:String, ... arguments)  

 用法如下:

  * 在html文件里加入 

   * <script type="text/javascript" 

   * function ch(value) 

   * { 

   *    alert("哈哈"); 

   * } 

   * </script> 

   */    

   ExternalInterface.call("ch","ActionScript 3.0 Cookbook");  

 

   * 在html文件里加入  

   * <script type="text/javascript"  

   * function oc()  

   * {  

   *    alert(document.getElementById("ExternalInterfaceTest").cc("hello"));  

   * }  

   * </script>  

   *   

   * <input type="button" value="测试" onclick="oc()"/>  

   */    

   ExternalInterface.addCallback("cc",cc);   

   function cc():String {

       return "Hello";

   }

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载