一、动作
动作部分的Action是用来控制影片播放状态的脚本集合。以利于Flash脚本编写人员速查。
(一)影片控制
1.goto
语法:gotoAndPlay(scene, frame)
参数:scene 播放头将转到场景的名称。frame 播放头将转到的帧的编号或标签。
描述:动作;将播放头转到场景中指定的帧并从该帧开始播放。如果未指定场景,则播放头将转到当前场景中的指定帧。
2.on
语法:on(mouseEvent) {statement(s);}
参数: statement(s)是指发生mouseEvent时要执行的指令。
mouseEvent是“事件”触发器。当发生此事件时,执行事件后面花括号中的语句。可为mouseEvent参数指定下面的任何值:
press在鼠标指针经过按钮时按下鼠标;release在鼠标指针经过按钮时释放鼠标按钮;releaseOutside当鼠标指针在按钮之内时按下按钮后,将鼠标指针移到按钮之外,此时释放鼠标;rollOut鼠标指针移出按钮区域;rollOver;鼠标指针滑过按钮;dragOut在鼠标指针滑过按钮时按下鼠标,然后滑出此按钮区域;dragOver在鼠标指针移过按钮时按下鼠标,然后移出此按钮,再移回此按钮;keyPress(key)按下指定的key。此参数的key部分可使用Flash“键盘键和键控代码值”中所列的任何键控代码进行指定,或者使用Key对象的属性摘要中列出的任何键常量进行指定。
描述:事件处理函数;指定触发动作的鼠标事件或按键事件。
3.play
语法:play()
描述:动作;在时间轴中向前移动播放头。
4.stop
语法:stop
描述:动作;停止当前正在播放的影片。此动作最通常的用法是用按钮控制影片剪辑。
5.stopAllSounds
语法:stopAllSounds()
描述:动作;在不停止播放头的情况下停止影片中当前正在播放的所有声音。设置到流的声音在播放头移过它们所在的帧时将恢复播放。
(二)浏览器/网络
该部分的Action是Flash MX用来与影片或外部文件进行交互操作的脚本集合。
1.fsCommand
语法:fscommand(″command″, ″parameters″)
参数:command。parameters均是一个传递给宿主应用程序用于任何用途的字符串;或者一个传递给Flash Player的值。
描述:动作;使Flash影片能够与Flash Player或承载Flash Player的程序(如Web浏览器)进行通讯。还可使用fsCommand动作将消息传递给Director,或者传递给VB、VC++和其他可承载ActiveX控件的程序。
2.getURL
语法:getURL(url [, window [, ″variables″]])
参数:url可从该处获取文档的URL。
window一个可选参数,指定文档应加载到其中的窗口或HTML框架。你可输入特定窗口的名称,或从下面的保留目标名称中选择:_self指定当前窗口中的当前框架;_blank指定一个新窗口;_parent指定当前框架的父级;_top指定当前窗口中的顶级框架;variables用于发送变量的GET或POST方法。如果没有变量,则省略此参数。GET方法将变量追加到URL的末尾,该方法用于发送少量变量。POST方法在单独的HTTP 标头中发送变量,该方法用于发送长的变量字符串。
描述:动作;将来自特定URL的文档加载到窗口中,或将变量传递到位于所定义URL的另一个应用程序。若要测试此动作,请确保要加载的文件位于指定的位置。若要使用绝对URL,则需要网络连接。
3.loadMovie
语法:loadMovie(″url″,level/target[, variables])
参数:url要加载的SWF文件或JPEG文件的绝对或相对URL。
target指向目标影片剪辑的路径。目标影片剪辑将替换为加载的影片或图像。只能指定target影片剪辑或目标影片的level这两者之一。
level一个整数,指定Flash Player中影片将被加载到的级别。在将影片或图像加载到级别时,标准模式下“动作”面板中的loadMovie动作将切换为loadMovieNum;在专家模式下,必须指定loadMovieNum或从“动作”工具箱中选择它。
variables一个可选参数,指定发送变量所使用的HTTP方法。该参数须是字符串GET或POST。
描述:动作;在播放原始影片的同时将SWF或JPEG文件加载到Flash Player中。loadMovie动作使你可以同时显示几个影片,并且无需加载另一个HTML文档就可在影片之间切换。
使用unloadMovie动作可删除使用loadMovie动作加载的影片。
4.loadVariables
语法:loadVariables (″url″ ,level/″target″[, variables])
参数:url变量所处位置的绝对或相对URL。
level指定Flash Player中接收这些变量的级别的整数。参数具体用法同loadmovie。
target指向接收所加载变量的影片剪辑的目标路径。
variables一个可选参数,指定发送变量所使用的HTTP方法。
描述:动作;从外部文件(例如文本文件,或由CGI脚本、ASP、PHP脚本生成的文本)读取数据,并设置Flash Player 级别或目标影片剪辑中变量的值。此动作还可用于使用新值更新活动影片中的变量。
5.unloadMovie
语法:unloadMovie[Num](level/″target″)
参数:level加载影片的级别(_levelN)。从一个级别卸载影片时,在标准模式下,“动作”面板中的 unloadMovie动作切换为unloadMovieNum;在专家模式下,必须指定unloadMovieNum,或者从“动作”工具箱中选择它。
target影片剪辑的目标路径。
描述:动作;从Flash Player中删除一个已加载的影片或影片剪辑。
(三)影片编辑控制
1.duplicateMovieclip
语法:duplicateMovieClip(target, newname,depth)
参数:target要复制的影片剪辑的目标路径。
newname复制的影片剪辑的唯一标识符。
depth复制的影片剪辑的唯一深度级别。深度级别是复制的影片剪辑的堆叠顺序。这种堆叠顺序很像时间轴中图层的堆叠顺序;较低深度级别的影片剪辑隐藏在较高堆叠顺序的剪辑之下。必须为每个复制的影片剪辑分配一个唯一的深度级别,以防止它替换现有深度上的影片。
描述:动作;当影片正在播放时,创建一个影片剪辑的实例。无论播放头在原始影片剪辑(或“父级”)中处于什么位置,复制的影片剪辑的播放头始终从第一帧开始。如果删除父影片剪辑,则复制的影片剪辑也被删除。
2.onClipEvent
语法:onClipEvent(movieEvent){
statement(s);
}
参数:movieEvent是一个称作“事件”的触发器。当事件发生时,执行该事件后面花括号中的语句。可以为movieEvent参数指定下面的任何值:load影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。;unload在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与Unload影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作;enterFrame以影片帧频不断地触发此动作。首先处理与enterFrame 剪辑事件关联的动作,然后才处理附加到受影响帧的所有帧动作脚本;mouseMove每次移动鼠标时启动此动作。_xmouse和_ymouse属性用于确定当前鼠标位置;mouseDown当按下鼠标左键时启动此动作;mouseUp当释放鼠标左键时启动此动作;keyDown当按下某个键时启动此动作。使用Key.getCode方法获取最近按下的键的有关信息;keyUp当释放某个键时启动此动作。使用Key.getCode方法获取最近按下的键的有关信息;data当在loadVariables或loadMovie动作中接收数据时启动此动作。当与loadVariables动作一起指定时,data事件只发生一次,即加载最后一个变量时。当与loadMovie动作一起指定时,获取数据的每一部分时,data事件都重复发生。
statement(s)发生mouseEvent时要执行的指令。
描述:事件处理函数;触发为特定影片剪辑实例定义的动作。
3.removeMovieClip
语法:removeMovieClip(target)
参数:target用duplicateMovieClip创建的影片剪辑实例的目标路径,或者用MovieClip对象的 attachMovie或duplicateMovieClip方法创建的影片剪辑的实例名。
描述:动作;删除用MovieClip对象的attachMovie或duplicateMovieClip方法创建的,或者用 duplicateMovieClip动作创建的影片剪辑实例。
4.setProperty
语法:setProperty(″target″,property,value/expression)
参数:target到要设置其属性的影片剪辑实例名称的路径。
property要设置的属性。
value属性的新文本值。
expression计算结果为属性新值的公式。
描述:动作;当影片播放时,更改影片剪辑的属性值。
5.startDrag
语法:startDrag(target,[lock ,left ,top ,right,bottom])
参数:target要拖动的影片剪辑的目标路径。
lock一个布尔值,指定可拖动影片剪辑是锁定到鼠标位置中央(true),还是锁定到用户首次点击该影片剪辑的位置上(false)。此参数是可选的。
left、top、right、bottom相对于影片剪辑父级坐标的值,这些坐标指定该影片剪辑的约束矩形。这些参数是可选的。
描述:动作;使target影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行startDrag动作后,影片剪辑将保持可拖动状态,直到被stopDrag动作明确停止为止,或者直到为其他影片剪辑调用了 startDrag动作为止。
6.stopDrag
语法:stopDrag()
描述:动作;停止当前的拖动操作。
7.updateAfterEvent
语法:updateAfterEvent()
描述:动作;当在onClipEvent处理函数中调用它时,或作为传递给setInterval的函数或方法的一部分进行调用时,该动作更新显示(与为影片设置的每秒帧数无关)。如果对updateAfterEvent的调用不在 onClipEvent处理函数中,也不是传递给setInterval的函数或方法的一部分,则Flash忽略该调用。
(四)变量
该部分Action是Flash MX脚本语言中的变量及对应操作的脚本集合。
1.delete
语法:delete reference
参数:reference要消除的变量或对象的名称。
描述:运算符;销毁由reference参数指定的对象或变量,如果该对象被成功删除,则返回true;否则返回false值。
2.set variable
语法:set(variable,expression)
参数:variable保存expression参数值的标识符;expression分配给变量的值。
描述:动作;为变量赋值。variable是保存数据的容器。变量可以保存任何类型的数据(例如,字符串、数字、布尔值、对象或影片剪辑)。每个影片和影片剪辑的时间轴都有其自己的变量集,每个变量又都有其自己独立于其他时间轴上的变量的值。
3.var
语法:var variableName1 [= value1][...,variableNameN [=valueN]]
参数:variableName标识符;value分配给变量的值。
描述:动作;用于声明局部变量。如果在函数内声明局部变量,那么变量就是为该函数定义的,且在该函数调用结束时到期。如果变量不是在块({})内声明的,但使用call动作执行该动作列表,则该变量为局部变量,且在当前列表结束时到期。如果变量不是在块中声明的,且不使用call动作执行当前动作列表,则这些变量不是局部变量。
4.with
语法:with (object) {
statement(s);
}
参数:object动作脚本对象或影片剪辑的实例;statement(s)花括号中包含的动作或一组动作。
描述:动作;允许你使用object参数指定一个对象(比如影片剪辑),并使用statement(s)参数计算对象中的表达式和动作。这可以使你不必重复书写对象的名称或路径。
(五)条件/循环
该部分Action是Flash MX脚本中如何操作影片逻辑的脚本集合。
1.break
语法:break
描述:动作;出现在一个循环(for、for..in、do while或while 循环)中,或者出现在与switch动作内特定case语句相关联的语句块中。break动作可命令Flash跳过循环体的其余部分,停止循环动作,并执行循环语句之后的语句。当使用break动作时,Flash解释程序会跳过该case块中的其余语句,转到包含它的 switch动作后的第一个语句。使用break动作可跳出一系列嵌套的循环。
2.case
语法:case expression: statements
参数:expression任何表达式;statements任何语句。
描述:关键字;定义用于switch动作的条件。如果case关键字后的expression参数在使用全等(===)的情况下等于switch动作的expression参数,则执行statements参数中的语句。如果在switch语句外部使用case动作,则将产生错误,脚本不能编译。
3.continue
语法:continue
描述:动作;出现在几种类型的循环语句中;它在每种类型的循环中的行为方式各不相同。
在while循环中,continue可使Flash解释程序跳过循环体的其余部分,并转到循环的顶端(在该处进行条件测试)。在do while循环中,continue可使Flash解释程序跳过循环体的其余部分,并转到循环的底端(在该处进行条件测试)。在for循环中,continue可使Flash解释程序跳过循环体的其余部分,并转而计算for循环的后表达式(post-expression)。在for..in循环中,continue可使Flash解释程序跳过循环体的其余部分,并跳回循环的顶端(在该处处理下一个枚举值)。
4.Default
语法:default: statements
参数:statements任何语句。
描述:关键字;定义switch动作的默认情况。对于一个给定的switch动作,如果该switch动作的 Expression参数与case关键字后面的任何一个Expression参数都不相等(使用全等),则执行这些语句。
5.do while
语法:do {
statement(s)
} while (condition)