- NerveM
-
FLASH 命令函数总汇
FLASH 命令函数总表+ Basic Actions 能加入到程序中的基本Action
- Go to 跳转到指定的帧
- Play 播放
- Stop 停止
- Toggle High Quality 在高画质和低画质间切换
- Stop All Sounds 停止所有声音的播放
- Get URL 使浏览器浏览指定页面
- FSCommand 发送FSCommand命令
- Load Movie 引入影片
- Unload Movie 卸载影片
- Tell Target 指定Action命令生效的目标
- If Frame Is Loaded ..帧是否被载入
- On Mouse Event 鼠标事件
+ Actions 所有的Action
- break 跳出循环
- call 调用指定帧
- comment 注释
- continue 继续循环
- delete 删除一个物件(Object)中的变量
- do while do while循环
- duplicateMovieClip 复制MC
- else 否则(与if联用)
- else if 否则如果(与if联用)
- evaluate 调用自己写的函数(Function)
- for for循环
- for .. in 列举物件(Object)中的子体(Child)
- FSCommand 发送FSCommand命令
- function 声明自定义函数
- getURL 使浏览器浏览指定页面
- goto 跳转到指定的帧
- if 如果
- ifFrameLoaded ..帧是否被载入
- include 读入外部的ActionScript程序文件(.as)
- loadMovie 引入MC
- loadVariables 引入外部文件中的变量值
- on 鼠标事件的触发条件
- onClipEvent MC的事件触发程序
- play 播放
- print 输出到打印机
- removeMovieClip 删除MC
- return 在函数(function)中返回一个值
- set variable 设定变量值
- setProperty 设定属性
- startDrag 开始拖动
- stop 停止
- stopAllSounds 停止所有声音的播放
- stopDrag 停止拖动
- swapDepths 交换两个MC的深度
- tellTarget 指定Action命令生效的目标
- toggleHighQuality 在高画质和低画质间切换
- trace 跟踪调试
- unloadMovie 卸载MC
- var 声明局部变量
- while 当..成立时..
- with 对..物件(Object)做..
+ Operators
- ! 逻辑非操作
- != 不等于
- "" 字符串
- % 取余数
- && 逻辑与操作
- () 括号
- * 乘号
- + 加号
- + + 变量自加一
- - 减号
- -- 变量自减一
- / 除号
- < 小于
- <= 小于等于
- <> 不等于
- == 相等
- > 大于
- >= 大于等于
- and 逻辑与
- not 逻辑非
- or 逻辑或
- typeof 返回变量类型
- void 实体,无返回
- | | 逻辑或操作
+ Bitwise Operators 位操作符
- & 位与操作
- << 位左移
- >> 位右移
- >>> 位右移(无符号)
- ^ 位异或操作
- | 位或操作
- ~ 补位操作
+ Compound Assign Operators 复合操作符
- %= A%=B 等效于 A=A%B
- &= A&=B 等效于 A=A&B
- *= A*=B 等效于 A=A*B
- + = A+=B 等效于 A=A+B
- -= A-=B 等效于 A=A-B
- /= A/=B 等效于 A=A/B
- <<= A<<=B 等效于 A=A< - >>= A>>=B 等效于 A=A>>B
- >>>= A>>>=B 等效于 A=A>>>B
- ^= A^=B 等效于 A=A^B
- |= A|=B 等效于 A=A|B
+ String Operators 字符串操作符
- add 连接两个字符串
- eq A eq B 字符串A值与字符串值B相等
- ge A ge B 字符串A值大于等于字符串B值
- gt A gt B 字符串A值大于字符串B值
- le A le B 字符串A值小于等于字符串B值
- lt A lt B 字符串A值小于字符串B值
- ne A ne B 字符串A值不等于字符串B值
+ Functions 函数
- Boolean 取表达式的布尔值(True 或 False)
- escape 除去URL串中的非法字符
- eval 返回由表达式命名的变量得值
- false 布尔非值(0)
- getProperty 获取属性
- getTimer 获取从电影开始播放到现在的总播放时间(毫秒数)
- getVersion 获取浏览器的FLASHPlayer的版本号
- globalToLocal 场景(Scene)中的坐标转换成MC中的坐标
- hitTest 测试一个点或者MC是否同另一个交叉
- int 把数值强制转换成整数
- isFinite 测试数值是否为有限数
- isNaN 测试是否为非数值
- keycode 返回键盘按下键的键盘值
- localToGlobal MC中的坐标转换成场景(Scene)中的坐标
- maxscroll 文本框的最大长度
- newline 换行符
- Number 将参数转换成数值
- parseFloat 将字符串转换成浮点数
- parseInt 将字符串转换成小数
- random 产生0到指定数间的随机数
- scroll 文本框中的当前行
- String 将参数转换成字符串
- targetPath 返回指定实体MC的路径字符串
- true 布尔是值(1)
- unescape 保留字符串中的%XX格式的十六进制字符
+ String Functions 字符串函数
- chr 将ASCII码转换成相应字符
- length 返回字符串的长度
- mbchr 将ASCII/S-JIS编码转换成相应的多字节字符
- mblength 返回多字节字符串的长度
- mbord 将多字节字符转换成相应的ASCII/S-JIS编码
- mbsubstring 截取多字节字符串中的字串
- ord 将字符转换成ASCII码
- substring 截取字符串中的子串
+ Properties 属性
- _alpha Alpha值(透明度值)
- _currentframe 在MC中的当前帧数
- _droptarget 正在拖动的MC是否播完
- _focusrect 焦点矩形框的显示与否(True显示/Flase不显示)
- _framesloaded 载入的影帧数
- _height MC的高度
- _highquality 画质的高低(True高画质/False低画质)
- _name MC的实体名
- _quality 当前画质(字符串值) LOW,MEDIUM,HIGH,BEST
- _rotation MC旋转的角度(单位:度)
- _soundbuftime 声音的缓冲区大小(默认值5,单位:秒)
- _target MC的路径
- _totalframes 总帧数
- _url 电影被调用的URL地址
- _visible 是否可视(True可视/False不可视)
- _width MC的宽度
- _x MC的x坐标
- _xmouse 鼠标的x坐标
- _xscale MC的X轴向缩放度
- _y MC的y坐标
- _ymouse 鼠标的y坐标
- _yscale MC的y轴向缩放度
+ Objects 物件
+ Array 数组
- concat 合并多个数组
- join 合并数组元素位字符串
- length 返回数组长度
- new Array 新建数组物件
- pop 出栈 (FILO 先入后出)
- push 入栈 (入队列)
- reverse 反相(颠倒数组,及第一个元素和最后一个元素互换……)
- shift 出队列 (FIFO 先入先出)
- slice 截取数组中的子串生成新的数组
- sort 数组元素的排序
- splice 从数组中指定元素起删除指定个数的元素或者删除指定元素
- unshift 从数组头部插入一个元素
+ Boolean 布尔数
- new Boolean 新建布尔型物件
- toString 将布尔型物件的值转换成字符串值
- valueOf 获取布尔型物件的值(返回值为布尔型)
+ Color 颜色
- getRGB 获取颜色值的RGB分量(返回值0xRRGGBB十六进制)
- getTransform 获取颜色值的转换量(返回值 cxform 型) [不太清楚]
- new Color 新建一颜色物件
- setRGB 设置颜色值的RGB分量(参数为0xRRGGBB十六进制)
- setTransform 设置颜色值的转换量(参数为 cxform 型) [不太清楚]
+ Date 时间和日期
- getDate 获取当前日期(本月的几号)
- getDay 获取今天是星期几(0-Sunday,1-Monday...)
- getFullYear 获取当前年份(四位数字)
- getHours 获取当前小时数(24小时制,0-23)
- getMilliseconds 获取当前毫秒数
- getMinutes 获取当前分钟数
- getMonth 获取当前月份(注意从0开始:0-Jan,1-Feb...)
- getSeconds 获取当前秒数
- getTime 获取UTC格式的从1970.1.1 0:00以来的秒数
- getTimezoneOffset 获取当前时间和UTC格式的偏移值(以分钟为单位)
- getUTCDate 获取UTC格式的当前日期(本月的几号)
- getUTCDay 获取UTC格式的今天是星期几(0-Sunday,1-Monday...)
- getUTCFullYear 获取UTC格式的当前年份(四位数字)
- getUTCHours 获取UTC格式的当前小时数(24小时制,0-23)
- getUTCMilliseconds 获取UTC格式的当前毫秒数
- getUTCMinutes 获取UTC格式的当前分钟数
- getUTCMonth 获取UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
- getUTCSeconds 获取UTC格式的当前秒数
- getYear 获取当前缩写年份(当前年份减去1900)
- new Date 新建日期时间物件
- setDate 设置当前日期(本月的几号)
- setFullYear 设置当前年份(四位数字)
- setHours 设置当前小时数(24小时制,0-23)
- setMilliseconds 设置当前毫秒数
- setMinutes 设置当前分钟数
- setMonth 设置当前月份(注意从0开始:0-Jan,1-Feb...)
- setSeconds 设置当前秒数
- setTime 设置UTC格式的从1970.1.1 0:00以来的秒数
- setUTCDate 设置UTC格式的当前日期(本月的几号)
- setUTCFullYear 设置UTC格式的当前年份(四位数字)
- setUTCHours 设置UTC格式的当前小时数(24小时制,0-23)
- setUTCMilliseconds 设置UTC格式的当前毫秒数
- setUTCMinutes 设置UTC格式的当前分钟数
- setUTCMonth 设置UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
- setUTCSeconds 设置UTC格式的当前秒数
- setYear 设置当前缩写年份(当前年份减去1900)
- toString 将日期时间值转换成"日期/时间"形式的字符串值
- UTC 返回指定的UTC格式日期时间的固定时间值
+ Key 键盘
- BACKSPACE Backspace(<-)键
- CAPSLOCK CapsLock键
- CONTROL Ctrl键
- DELETEKEY Delete(Del)键
- DOWN 方向下键
- END End键
- ENTER Enter(回车)键
- ESCAPE Esc键
- getAscii 获取最后一个按下或松开的键的对应字符的Ascii码
- getCode 获取最后一个被按下的键的键盘扫描码
- HOME Home键
- INSERT Insert( Ins)键
- isDown 当指定键被按下时返回True值
- isToggled 当指定键被锁定时返回True值
- LEFT 方向左键
- PGDN PageDown(PGDN)键
- PGUP PageUp(PGUP)键
- RIGHT 方向右键
- SHIFT Shift键
- SPACE 空格键
- TAB Tab键
- UP 方向上键
+ Math 数学函数
- abs abs(n) 取n的绝对值
- acos acos(n) n的反余弦(返回值单位:弧度)
- asin asin(n) n的反正弦(返回值单位:弧度)
- atan atan(n) n的反正切(返回值单位:弧度)
- atan2 atan2(x,y) 计算x/y的反正切
- ceil ceil(n) 取靠近n的上限的整数(向上取整)
- cos cos(n) 取n的余弦(n的单位:弧度)
- E Euler(欧拉)指数(约为2.718)
- exp 指数
- floor floor(n) 取靠近n的下限的整数(向下取整)
- LN10 ln10(约等于2.302)
- LN2 ln2(约等于0.693)
- log 取自然对数(e为底)
- LOG10E 10为底取E的对数(约等于0.434)
- LOG2E 2为底取E的对数(约等于1.443)
- max 返回两参数中的最大值
- min 返回两参数中的最小值
- PI 圆周率(约等于3.14159)
- pow pow(x,y) x的y次方
- random 产生0-1间的随机数
- round 四舍五入取整
- sin sin(n) 取n的正弦(n的单位:弧度)
- sqrt 开根号
- SQRT1_2 0.5开根号(约等于0.707)
- SQRT2 2开根号(约等于1.414)
- tan tan(n) 取n的正切(n的单位:弧度)
+ MovieClip 电影剪辑
- attachMovie 绑定一个电影,产生一个库中MC的实体
- dupicateMovieClip 复制当前MC为新的MC
- getURL 使浏览器浏览指定页面
- gotoAndPlay 跳转到指定帧并播放
- gotoAndStop 跳转到指定帧并停止播放
- loadMovie 引入一个外部电影到指定层
- loadVariables 引入外部文件中的变量值
- nextFrame 下一帧
- play 播放
- prevFrame 前一帧
- removeMovieClip 删除用duplicateMovieClip创建的MC
- startDrag 开始拖动MC
- stop 停止MC的播放
- stopDrag 停止拖动MC
- unloadMovie 卸载由loadMovie引入的Movie
+ Mouse 鼠标
- hide 隐藏鼠标指针
- show 显示鼠标指针
+ Number 数值
- MAX_value FLASH5 所允许的最大数值1.79769313486231 e 308
- MIN_value FLASH5 所允许的最小数值5 e -324
- NaN 是否为非数值(Not a Number)
- NEGATIVE_INFINITY 是否为负数
- new Number 新建数值物件
- POSITIVE_INFINITY 是否为正数
- toString 将数值转换成字符串
+ Object 物件
- new Object 新建物件
- toString 转换物件为字符串
- valueOf 返回物件的值
+ Selection 选择区
- getBeginIndex 获取可编辑文本区的起始位置,-1表示无可编辑文本区
- getCaretIndex 获取当前的编辑位置,-1表示没有可编辑文本区
- getEndIndex 获取可编辑文本区的结束位置,-1表示无可编辑文本区
- getFocus 获取当前的激活文本区的文本变量名
- setFocus 设置当前的激活文本区
- setSelection 设置可编辑文本的起始位置和终止位置
+ Sound 声音
- attachSound 绑定库中的一个声音
- getPan 获取声音的混音值 [不太清楚]
- getTransform 获取当前声音的变换量(返回值类型:sxform) [不太清楚]
- getVolume 获取当前声音的音量(百分比)
- new Sound 新建声音物件
- setPan 设置声音的混音值 [不太清楚]
- setTransform 设置当前声音的变换量(参数类型:sxform) [不太清楚]
- setVloume 设置当前声音的音量(百分比)
- start 开始播放当前声音
- stop 停止播放当前声音
+ String 字符串
- charAt 在指定的索引表中返回一个字符
- charCodeAt 在指定的索引表中返回一个字符的代码
- concat 联结合并多个字符串
- fromCharCode 从字符代码组构造出一个新的字符串
- indexOf 在字符串中寻找子串,返回子串起始位置或-1(-1表示未找到)
- lastIndexOf 在字符串中寻找子串,返回子串终止位置或-1(-1表示未找到)
- length 返回字符串的长度
- new String 新建字符串物件
- slice 返回字符串中指定截取的子串
- split 根据限定符将字符串转换成一个数组
- substr substr( start, length ) 返回从start开始,共length长的子串
- substring substring( indexA, indexB ) 返回indexA..indexB之间的子串
- toLowerCase 将字符串中的大写字符全部转换成小写
- toUpperCase 将字符串中的小写字符全部转换成大写
+ XML 可扩充性标记语言
- appendChild 添加一个子结点到指定的XML元素
- attributes XML元素的属性数组
- childNodes 一个XML元素的子结点数组
- cloneNode 克隆(复制)当前结点
- createElement 新建一个新的XML元素
- createTextNode 新建一个新的XML文本结点
- firstChild 返回当前XML结点的第一个子结点
- hasChildNodes 当前XML结点是否有子结点(返回true有子结点/flash则无)
- insertBefore 在一个指定的XML元素的子结点前插入一个新的子结点
- lastChild 返回当前XML结点的最后一个子结点
- load 从指定的URL把XML元素引入FLASH中
- loaded 当XML元素引入或是发送同时引入FLASH中后,返回true值
- new XML 新建一个XML物件
- nextSibling 当前XML结点的下一个结点
- nodeName 返回当前XML结点的名字
- nodeType 返回当前XML结点的类型(1-元素,3-文本)
- nodevalue 返回当前XML结点的值(text型返回文本)
- onLoad 当引入或发送同时引入时触发事件
- parentNode 返回当前XML结点的父结点
- parseXML 将XML字符串转换成XML物件
- previousSibling 当前XML结点的前一个结点
- removeNode 从XML文本中删除结点
- send 从FLASH中把一个XML元素发送到指定的URL地址
- sendAndLoad 从FLASH中把一个XML元素发送到指定的URL地址同时引入XML结果
- toString 把XML物件转换为XML字符串表达
+ XMLSocket XML套接口
- close 关闭一个XML套接口
- connect 连接一个XML套接口,指定URL,并定义其端口号
- new XMLSocket 建立一个新的XML套接口
- onClose 关闭XML套接口时触发事件
- onConnect 连接XML套接口时触发事件
- onXML 从服务器上获取XML时触发事件
- send 发送XML给服务器
- 九万里风9
-
若要创建注释块,请在命令行开头添加 /*,在末尾添加 */。例如,当以下脚本运行时,将不执
行注释块中的任何代码:
//运行以下代码
var x:Number =15;
var y:Number =20;
//不运行以下代码
/*
on (release){
//创建新的 Date 对象
myDate =new Date();
currentMonth =myDate.getMonth();
//将月份数转换为月份名称
monthName =calcMonth(currentMonth);
year =myDate.getFullYear();
currentDate =myDate.getDate();
}
*/
//运行以下代码
var name:String ="My name is";
var age:Number =20;
关键字
动作脚本保留一些单词用于该语言中的特定用途,因此不能将它们用作标识符,例如变量、函数
或标签名称。下表列出了所有动作脚本关键字:
常数
常数是其值始终不变的属性。
例如,常数 BACKSPACE 、ENTER 、QUOTE 、RETURN 、SPACE 和 TAB 是 Key 对象的属性,指代键盘
的按键。若要测试用户是否按下了 Enter 键,可以使用下面的语句:
if(Key.getCode()==Key.ENTER){
alert ="Are you ready to play?";
controlMC.gotoAndStop(5);
}
break case class continue
default delete dynamic else
extends for function get
if implements import in
instanceof interface intrinsic new
private public return set
static switch this typeof
var void while with
关于数据类型
数据类型描述变量或动作脚本元素可以包含的信息的种类。Flash 中内置了两种数据类型:原始
数据类型和引用数据类型。原始数据类型是指字符串、数字和布尔值,它们都有一个常数值,因
此可以包含它们所代表的元素的实际值。引用数据类型是指影片剪辑和对象,它们的值可能发生
更改,因此它们包含对该元素的实际值的引用。包含原始数据类型的变量与包含引用类型的变量
在某些情况下的行为是不同的。(请参见第39 页的“在程序中使用变量”。)还有两类特殊的
数据类型:空值和未定义。
在 Flash 中,任何不属于原始数据类型或影片剪辑数据类型的内置对象(如 Array 或 Math )
均属于对象数据类型。
每种数据类型都有其各自的规则,下面的主题中将对其进行介绍:
u2022第31 页的“字符串”
u2022第32 页的“数字”
u2022第32 页的“布尔值”
u2022第32 页的“Object ”
u2022第33 页的“MovieClip ”
u2022第33 页的“Null ”
u2022第33 页的“Undefined ”
当调试脚本时,可能需要确定表达式或变量的数据类型,以理解其特定行为的原理。可以用
typeof 运算符实现这一目的(请参见第33 页的“确定项目的数据类型”)。
您可以使用以下转换函数之一将一种数据类型转换为另一种数据类型:Array(),Boolean(),
Number(),Object(),String().
字符串
字符串是诸如字母、数字和标点符号等字符的序列。在动作脚本语句中输入字符串的方式是将其
放在单引号或双引号之间。字符串被当做字符,而不是变量进行处理。例如,在下面的语句中,
"L7"是一个字符串:
favoriteBand ="L7";
可以使用加法 (+)运算符连接 或合并两个字符串。动作脚本将字符串前面或后面的空格作为该
字符串的文本部分。在下面的表达式中,逗号后有一个空格:
greeting ="Welcome,"+firstName;
若要在字符串中包含引号,请在它前面放置一个反斜杠字符 ()。这就是所谓的将字符转义。在
动作脚本中,还有一些只能用特殊的转义序列才能表示的字符。下表提供了所有动作脚本转
义符:
转义序列字符
退格符 (ASCII 8)
f 换页符 (ASCII 12)
换行符 (ASCII 10)
回车符 (ASCII 13)
制表符 (ASCII 9)
32 第2 章:动作脚本基础
数字
数字数据类型是双精度浮点数。您可以使用加 (+)、减 (-)、乘 (*)、除 (/)、求模 (%)、递增 (++)
和递减 (--)等算术运算符来处理数字。也可使用内置的 Math 和 Number 类的方法来处理数
字。下面的示例使用 sqrt()(平方根)方法返回数字 100 的平方根:
Math.sqrt(100);
有关更多信息,请参见第41 页的“数值运算符”。
布尔值
布尔值是 true 或 false 中的一个。动作脚本也会在适当时将值 true 和 false 转换为 1 和 0 。
布尔值经常与动作脚本语句中通过比较控制脚本流的逻辑运算符一起使用。例如,在下面的脚本
中,如果变量 password 为 true ,则会播放该 SWF 文件:
onClipEvent (enterFrame){
if (userName ==true &&password ==true){
play();
}
}
请参见第46 页的“使用内置函数”和第42 页的“逻辑运算符”。
Object
对象是属性的集合。每个属性都有名称和值。属性的值可以是任何的 Flash 数据类型,甚至可以
是对象数据类型。这样就可以使对象相互包含(即将其嵌套)。若要指定对象及其属性,可以使
用点 (.)运算符。例如,在下面的代码中,hoursWorked 是 weeklyStats 的属性,而后者是
employee 的属性:
employee.weeklyStats.hoursWorked
您可以使用内置动作脚本对象来访问和处理特定种类的信息。例如,Math 对象具有一些方法,
这些方法可以对传递给它们的数字执行数学运算。此示例使用 sqrt()方法:
squareRoot =Math.sqrt(100);
动作脚本 MovieClip 对象具有一些方法,您可以使用这些方法控制舞台上的影片剪辑元件实
例。此示例使用 play()和 nextFrame()方法:
mcInstanceName.play();
mc2InstanceName.nextFrame();
"双引号
"单引号
\反斜杠