| AI教程 | Flash教程 | Fireworks教程 | Painter教程 | CDR教程 | CAD教程 | 3Dmax教程 | Maya教程 | 摄影技巧 | 广告文案 | LOGO案例 | PS教程

关于 JavaScript 和 Flash 间的通信

  本文讨论了3种基本的Flash/Javascript通信方式: Javascript 到 Flash的通信----使用Flash播放器的javascript方法 Flash 到 Javascript的通信----使用Flash的fscommand Flash 到 Flash的通信----------使用本地连接对象或综合上2种技术

  前言、JavaScript和Macromedia Flash的通信示例

  原文地址: http://www.macromedia.com/support/flash/ts/documents/java_script_comm.htm

  说明: 略作修改,主要是一些很初级的操作; 又很多相似的文章,不过这个很权威

  下面是一些在Flash和使用Javascript的HTML文件直接通信的示例,每个示例都有简略的步骤

  本文讨论了3种基本的Flash/Javascript通信方式:

  Javascript 到 Flash的通信----使用Flash播放器的javascript方法

  Flash 到 Javascript的通信----使用Flash的fscommand

  Flash 到 Flash的通信----------使用本地连接对象或综合上2种技术

  并不是所有的浏览器都很重视脚本.为了和Flash播放器通信,浏览器必须有内置的钩子以便Flash播放器可以'监听'.浏览器必须是下列的几种:

  Netscape Navigator 3.0-4.7x, 和 Netscape 6.2或更高

  (Windows 95/98/NT/2000/XP 或 MacOS; 允许Java和LiveConnect)

  Internet Explorer 3.0 或更高

  (仅Windows 95/98/NT/2000/XP; 允许ActiveX)

  注意:Macintosh上的Internet Explorer和早期版本的Netscape6不支持这种方法.请查看本文的附加信息

  一、Javascript到Flash的通信

  这个例子演示了如何使用Flash的method把变量从HTML的input text 发送到该页面中的Flash文件中.HTML input的数据通过Flash的SetVariable方法传送到Flash文件中.

  查看示例:示例

  下载源文件: javascript_to_flash.zip(17k)

  步骤:

  Flash中

  1.新建一个文件,保存为javascript_to_flash.fla

  2.用文字工具在舞台上创建一个文本域

  3.选择这个文本域,在属性面板中,从下拉列表中选择动态文本(Dynamic Text),在变量(variable)栏填上"myVar"

  注意:最好的习惯是使用Instance,用myVar.text更改myVar的值.为了简单起见和兼容Flash4和Flash5,我们使用的是变量名的形式.

  4.保存文件

  5.发布HTML文件和SWF文件

  Dreamweaver中

  下一步的工作转移到Dreamweaver中了,当然也可以是其他的HTML编辑器

  1.打开上一步发布的HTML文件

  2.插入生成的SWF文件和OBJECT/EMBED标签

  (1) Insert>Media>Flash,并选择这个Flash

  (2) 切换到代码视图,我们需要修改被选中的<OBJECT>和<EMBED>标签

  (3) 在OBJECT标签中,插入id="myFlash"

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/
 flash/swflash.cab#version=5,0,0,0" width=366 height=142 id="myFlash">

  注意:如果你是粘贴复制代码的话,确保删除不必要的换行.否则可能会引起错误; id也可以在属性面板里直接输入

  (4) 在EMBED标签中,插入name="myFlash"和swLiveConnect="true",确保没有使用id属性!代码应当是这样子的:

<embed src="javascript_to_flash.swf" quality=high width=366 height=142 type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" name="myFlash" swLiveConnect="true">
</embed>

  3.创建表单域

  (1) 回到视图

  (2) 插入文本域(Insert> Form Object> Text Field),如果询问是否添加表单域,选择是

  (3) 把文本域的HTML标签修改成这样:

  <input type="text" name="sendText" maxlength="45" onChange="doPassVar(this)">

  每当文本域内容发生变化时,onChange就被触发,doPassVar()函数就被调用

  4.创建传递变量值的Javascript函数

  复制下面的Javascript到<head></head>标签内

<SCRIPT LANGUAGE=JavaScript>
<!--
 function doPassVar(args){
 var sendText = args.value;
 window.document.myFlash.SetVariable("myVar", sendText);
 }
//-->
</SCRIPT>

  5.保存文件,测试一下(F12)

  二、Flash到Javascript的通信

  从HTML可以发送数据到Flash,反过来也可以. 这个例子演示了如何应用Flash的Fscommand来发送数据到Javascript.

主题测试文章,只做测试使用。发布者:绘画吧,转转请注明出处:http://www.huitu8.com/shejijiaocheng/Flashjiaocheng/20190813/68252.html



联系我们

在线咨询:点击这里给我发消息

邮件: