Flash中的动作脚本1.1什么是ActionScriptActionScript是Flash的脚本语言。
可以使用ActionScript控制Flash中的对象,创建向导和交互元素,也可以扩展Flash,制作高级交互影片和Flash交互网站。
1.2动作脚本所附加的位置1.附着在按钮实例上方法:选择场景中的按钮,单击鼠标右键,从弹出的快捷菜单中选择“动作”(Action),在打开的“动作”面板中添加ActionScript脚本。
使用:在动画播放时,发生按钮事件时,即会触发附着在其上对应事件的捕捉函数并运行该函数或指令。
2.附着在关键帧上方法:在想要附着动作脚本的关键帧上单击鼠标右键,从弹出的快捷菜单中选择“动作”,在打开的“动作”面板中添加动作脚本。
使用:在动画播放时,只要该关键帧被播放一次,附着在它上面的脚本就执行一次。
显示:附着有动作脚本的关键帧会显示一个a。
3.附着在影片剪辑上方法:在场景的影片剪辑上单击鼠标右键,从弹出的快捷菜单中选择“动作”,在打开的“动作”面板中添加动作脚本命令,该脚本就附着在影片剪辑上。
使用:当对影片剪辑发生各种事件时,就触发了附着在其上的捕捉函数,开始运行捕捉函数中的脚本命令。
1.3ActionScript相关述语1.实例:属于某个类的对象,同类对象的实例具有该类对象的所有共同特性。
例如每一个影片剪辑都是MovieClip类的一个实例,它们都具有_x、_y、_alpha 等属性。
每个实例都对应着一个标识该实例的标识符,称为实例名称。
要用程序控制或使用某个实例,就需要用到实例名称。
例如,要让影片剪辑实例(名称为myCan)中的动画播放,可以使用如下脚本程序:“();”。
其中,myCar表示实例名称,play()是MovieClip类的方法,它们之间用(.)连接起来。
2.对象:特定类的实例,是属性和方法的集合。
按钮是对象,影片剪辑是对象。
3.事件:是SWF文件播放时对象所发生的动作。
例如,单击按钮,按下键盘上的键,动画播放到某一帧等都是事件。
1)按钮事件a)onDragOut:当在按钮上按下鼠标,只要按住左键移到按钮外,就会开始执行相应的动作。
b)onDragOver:在按钮上按下鼠标,并按住移开按钮,然后又移到按钮上,并且在些过程中一直没有释放,则开始执行相应的动作。
c)onKeyDown:该事件与鼠标无关,而是指当按下键盘上的某个键时,执行相应的动作。
d)onKeyUp:键盘上有任何一个键被按下然后又被释放时,不会激发并开始执行相应的操作。
e)onPress:当在按钮上按下鼠标时,开始执行大括号中相应的动作,而不用等到释放鼠标以后。
f)onRelease:当在按钮上按下鼠标,并且又被释放以后,事件成立,相应的动作被执行,该事件是按钮动作编辑时的默认事件。
g)onReleaseOutside:当在按钮上按下鼠标,并且按住左键移到按钮外释放后,开始执行相应的动作。
h)onRollout:当鼠标滑出按钮时,开始执行相应动作。
i)onRollOver:当鼠标滑到按钮上时,开始执行相应动作。
2)影片剪辑事件a)onData:如果使用的是LoadVariables或LoadMovie,所有数据资料全部载入完毕时就会执行相应的动作。
b)onEnterFrame:只要选定添加动作的电影片段在当前的场景中存在且动画在播放,就会不断进行相应的动作。
c)onMousedown:按下鼠标左键时,执行相应的动作。
d)onMousemove:只要鼠标开始移动就执行相应的动作。
e)onMouseup:按下鼠标左键后又释放时,执行相应的动作。
f)Load:当电影片段开始载入到当前的场景中时,执行相应的动作,该事件是电影片段动作编辑时的默认事件。
g)Unload:当电影片段从当前场景中移出,就会激发设定的动作。
4.属性:定义对象的特性。
例如对于最常用的影片剪辑对象,属性_x表示该影片剪辑在水平方向上的坐标位置(横坐标),属性_y表示竖直方向上的坐标位置(纵坐标),属性_alpha表示透明度,属性总是与属性值相对应,可以改变属性值以改变对象的显示状态,也可以动态地获得对象的属性值。
5.方法:与类关联的函数。
例如,getHours()是时间类Date的方法,abs()是数学类Math类的方法。
6.数据类型:描述变量或动作脚本元素可以包含的信息的种类。
数据类型包括字符串、数字、布尔值、对象、影片剪辑、空值和未定义。
7.标识符:用于表示变量、属性、对象、函数或方法的名称。
以字母、下划线或$开头。
8.变量:一种可以保留任何数据类型值的标识符。
变量和变量值对应,可以把变量看做是数据的容器。
可以创建和修改变量,也可以检索变量的值以在脚本中使用。
在使用变量前应先声明变量。
1.4基本动作1.GotoAndPlay():跳转到指定场景的指定帧开始播放。
2.GotoAndStop():跳转到指定场景的指定帧停止播放。
3.NextFrame():跳转到后一帧。
4.PrevFrame():跳转到前一帧。
5.NextScene():跳转到后一个场景。
6.PrevScene():跳转到前一个场景。
7.Play():播放。
8.Stop():停止播放。
9.StopAllSound():停止所有声音的播放。
10.On():当……事件发生时。
11.GetURL():获取指定的资源(可以是本地,也可以是远程)12.Fscommand():1)Fullscreen[true/false]:控制Flash播放是否进行全屏播放2)Allowscale[true/false]:控制Flash动画是否随着播放器的变化而变化3)Shwowmenu[true/false]:在播放器中,单击右键是否能显示菜单4)Trapallkeys[true/false]:控制播放器是否接受键盘事件5)Exec:在播放器中打开应用程序时,应用程序的路径6)Quit:不填参数,关闭动画,退出Flash播放器1.5动作脚本语法1.基本语法1)点语法(.):用来调用对象的属性和方法。
其表达式由对象或动画片段名开始,接着是一个点,最后是要指定的属性、方法或变量。
例如:2)花括号({}):使用花括号来为动作脚本语句分块。
例如:if(m==true){stop();}3)分号(;):表示动作脚本语句结束。
4)圆括号():定义函数时,要把函数的参数用圆括号括住。
例如:Function myFunction(name,age,adderss,phone){……………..}注释(实例名称主时间轴:_root. 实例名称父时间轴:_parent. 实例名称2.典型函数的使用1)getURL(url[,window[,”variables”]])a)参数说明url:可从该处获取文档的URL。
window:设置链接网页的打开方式,共有4种方式_self:在当前框架中打开链接。
_blank:在一个新窗口打开链接。
_parent:在当前框架的父级窗口中打开链接。
_top:在当前窗口的顶级框架中打开链接。
variables:可用GET或POST方法来发送变量。
GET方法将变量追加到URL的末尾,该方法用于发送少量变量。
POST方法在单独的HTTP标头中发送变量,该方法用于发送长的变量字符串。
如果没有变量也可忽略该参数。
b)实例2)getURL(对象){stop();};——对指定对象进行的动作3)setProperty();——设置对象属性4)set variable;——设置变量5)startDrag(“实例名称”,true):制作鼠标拖动效果;6)stopDrag():停止鼠标拖动效果;7)使用fscommand(x,y)制作全屏幕动画。
8)利用IfFrameLoaded(n)制作Loading动画。
9)制作精确Loading动画。
=0;TotalB=();KB=Int(totalB/1024);LoadB=();Percent=int(loadB/totalB)*100);=percent;10)duplicateMovieClip(目标,新名称,深度):复制影片剪辑。
11)removeMovieClip(目标):删除复制的影片剪辑。
12)3.程序流程控制种类1)顺序结构2)选择结构(分支结构、逻辑判断)a)ifb)if….else…c)if….else if….d)选择结构的嵌套3)循环结构a)do……while……b)whilec)ford)for……in…….4)中断控制语句a)continueb)break5)函数a)预定义函数:如getProperty(‘对象’,属性)b)自定义函数:如function area(r){return *r*r}c)全局函数:_global.函数名d)主时间轴函数:_root.函数名e)父时间轴函数:_parent.函数名。