Flash Actionscript 3.0 学习笔记

一、如何加载外部文件。

1、当网页中嵌入swf文件后,swf内的路径是相对于网页的。需要修改object 和 embed 标签的 base 属性,来指定swf加载的路径的父路径。加载外部文件时,子目录写法“sound/music.mp3”。注意斜杠方向

2、(以下ABC都指swf文件) 如果A加载了B,B又加载了C。直接在 Flash IDE 中测试时,会出现 Error #2035 错误。当时在网页中却没问题(前提是设置了 base 属性)

3、外部文件名为中文时,请加 encodeURI(),在服务器上测试通过,直接打开网页测试通不过。

二、如何让 flash 在浏览器窗口中全屏

1、文件》发布设置》其他格式(HTML包装器)

2、基本设置如下:

  大小:百分比

  缩放:精确匹配

三、(参考《殿堂之路 4.4.4函数动态添加实例属性》)访问上级的其他同级对象(如影片剪辑对象.name=”otherObjName”,或者在“实例名称”一栏中写上otherObjName)写法:this.parent[“otherObjName”]

  (1)不要写成 this.parent.otherObjName或者 this.parent.getChildByName(“otherObjName”)

  (2)以下脚本会出错:

this.parent.otherObjName.addChild(DisplayObject)???

//元件’****’, 图层’***, 帧 **,*** 行?1119: 访问可能未定义的属性?(通过 static 类型 flash.display:DisplayObjectContainer 引用)。

this.parent.getChildByName(“otherObjName”).addChild(DisplayObject)???

//元件’***’, 图层’***’, 帧 **,** 行?1061: 调用可能未定义的方法 addChild (通过 static 类型 flash.display:DisplayObject 引用)。

以下脚本正确:this.parent[otherObjName].addChild(DisplayObject)

类推:this.parent.gotoAndPlay(2) 会出错(出错代码1061),改成 this[“parent”].gotoAndPlay(2) 就没问题了

3、在进行和asp,数据库等有关的连接时,单击【控制】>【清除发布缓存并测试影片】,并不能有效的清除缓存。需要使用IE浏览器的清除功能清理下,再单击【控制】。。。才行。

个人经验之谈,或许和当时一直开始浏览器有关吧~~

4、http://help.adobe.com/zh_CN/flash/cs/using/WSb03e830bd6f770ee-70a39d612436d472f4-7ff8.html
使用相对于 SWF 文件的路径来指示 FLV 或 F4V 文件的位置

使用相对于网页的路径来指示皮肤文件的位置

这可让您在本地使用与服务器上相同的目录结构。如果视频此前已部署到承载视频的 FMS 或 FVSS 上,则可以跳过这一步。

发表回复