当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > javascript和Flash的通信

Flash动画制作
Flash CS3教程:墨水瓶工具创建轮廓线
Flash绘画技巧:绘制切开的西瓜和咸鸡蛋
Flash动画制作技巧:高级的阴影技巧
Flash CS3技巧:直接导入PSD文件编辑
Flash绘画技巧:透视和层次效果的阴影
Flash绘画技巧:投影滤镜设置阴影
Flash动画技巧:flash制作同步特效
Flash旋转复制和对齐工具绘制齿轮图标
Flash角色绘画技巧:绘制人物头像
Flash摄像头游戏课件的设计与实现
Flash技巧:PNG非透明区域为mask
Flash动画技巧:边缘模糊的mask
Flash遮罩让图片流动起来
Flash绘制:云层,海鸥,椰树,帆船,伞,椅子,日光
Flash鼠绘新手入门:金属花朵装饰的相框
网页中嵌入flash的最佳方案
Flash动画漫画人物的基本形变研究
Flash CS4基础(4):3d动画特效
Flash CS4教程:3D旋转和3D位移
Flash制作变化的模糊和拉伸产生超酷动画

Flash动画制作 中的 javascript和Flash的通信


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 48 ::
收藏到网摘: n/a

    说明: 略作修改,主要是一些很初级的操作; 又很多相似的文章,不过这个很权威
    下面是一些在和使用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中
  1.新建一个文件,保存为javascript_to_flash.fla
  2.用文字工具在舞台上创建一个文本域
  3.选择这个文本域,在属性面板中,从下拉列表中选择动态文本(Dynamic Text),在变量(variable)栏填上"myVar"
  注意:最好的习惯是使用Instance,用myVar.text更改myVar的值.为了简单起见和兼容Flash4和Flash5,我们使用的是变量名的形式.
  4.保存文件
  5.发布HTML文件和SWF文件


  >中
  下一步的工作转移到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="/upload/tech/20091121/20091121171258_0cb929eae7a499e50248a3a78f7acfc7.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.
  查看示例:示例2 下载源文件: flash_to_javascript.zip(10K)

  简要步骤:
  >Flash中
  新