第1章 初识ActionScript 1
1.1 一个简单的交互动画 1
1.2 ActionScript概述 5
1.3 ActionScript的特点 6
1.4 ActionScript的基本语法规则 8
1.5 ActionScript术语 11
1.6 本章小结 15
1.7 练习题 15
第2章 变量和数据类型 16
2.1 变量 16
2.1.1 变量的类型 16
2.1.2 变量的声明 18
2.1.3 变量的命名 19
2.1.4 变量的赋值 20
2.1.5 变量的作用范围 20
2.1.6 在脚本中使用变量 21
2.2 数据类型 23
2.2.1 字符串 23
2.2.2 数值 23
2.2.3 逻辑值 24
2.2.4 对象 24
2.2.5 影片剪辑 24
2.2.6 空值 25
2.2.7 未定义 25
2.3 本章小结 25
2.4 练习题 25
第3章 运算符和表达式 26
3.1 运算符的种类 26
3.1.1 数值运算符 26
3.1.2 比较运算符和相等运算符 30
3.1.3 字符串运算符 31
3.1.4 逻辑运算符 32
3.1.5 位运算符 33
3.1.6 赋值运算符 36
3.1.7 点运算符和数组访问运算符 37
3.1.8 其他运算符 38
3.2 运算符的优先级和结合律 40
3.3 表达式 40
3.4 本章小结 42
3.5 练习题 42
第4章 控制结构 43
4.1 条件判断结构 43
4.2 循环控制结构 46
4.2.1 while(while循环) 46
4.2.2 for(for循环) 47
4.2.3 for...in(for...in循环) 48
4.3 本章小结 50
4.4 练习题 50
第5章 动作面板与动作应用 51
5.1 动作概述 51
5.2 动作面板 51
5.2.1 打开动作面板 51
5.2.2 动作面板的编辑模式 52
5.2.3 不同编辑模式间的切换 58
5.2.4 使用动作面板弹出菜单 58
5.2.5 使用脚本参考面板 60
5.2.6 使用语法突出显示 61
5.2.7 使用代码提示 61
5.2.8 使用外部编辑器 64
5.3 动画控制动作 65
5.3.1 goto(跳转某帧) 65
5.3.2 play(播放)和stop(停止) 66
5.3.3 stopAllSounds(停止所有声音的播放) 66
5.3.4 on(检测鼠标事件) 67
5.4 浏览器与网络动作 68
5.4.1 fscommand(发布Flash命令) 68
5.4.2 getURL(获取URL) 69
5.4.3 loadMovie(载入动画) 70
5.4.4 loadVariables(载入外部文件并设置变量值) 71
5.4.5 unloadMovie(卸载动画) 72
5.5 影片剪辑控制动作 73
5.5.1 setProperty(设定影片剪辑属性) 73
5.5.2 duplicateMovieClip(复制影片剪辑) 74
5.5.3 removeMovieClip(删除影片剪辑) 75
5.5.4 onClipEvent(影片剪辑事件处理动作) 75
5.5.5 startDrag(开始拖动影片剪辑) 76
5.5.6 stopDrag(停止拖动影片剪辑) 77
5.5.7 updateAfterEvent(事件后更新) 77
5.6 变量相关动作 78
5.6.1 var(声明局部变量) 78
5.6.2 set variable(给变量赋值) 78
5.6.3 delete(删除对象或变量) 79
5.6.4 with(给动作指定操作对象) 80
5.7 条件与循环动作 81
5.7.1 if(如果) 81
5.7.2 else(否则) 82
5.7.3 else if(否则如果) 83
5.7.4 switch(开关)和case(情况) 84
5.7.5 break(跳出开关语句或循环语句) 85
5.7.6 default(默认) 85
5.7.7 while(while循环) 86
5.7.8 do...while(do...while循环) 87
5.7.9 for(for循环) 88
5.7.10 for...in(for...in循环) 88
5.7.11 Continue(继续循环) 89
5.8 打印动作 90
5.9 用户自定义函数动作 92
5.9.1 function(定义函数) 92
5.9.2 Return(返回函数的值) 93
5.9.3 call(调用帧动作) 93
5.9.4 call function(调用函数) 93
5.9.5 method(方法) 94
5.10 其他动作 95
5.10.1 trace(在输出窗口显示调试结果) 95
5.10.2 comment(注释) 96
5.10.3 evaluate(插入空行) 96
5.10.4 setInterval(设置时间间隔) 97
5.10.5 clearInterval(清除时间间隔) 98
5.10.6 #include(嵌入外部脚本文件) 99
5.10.7 #initclip(初始化剪辑) 99
5.10.8 #endinitclip(结束初始化剪辑) 100
5.11 本章小结 100
5.12 练习题 100
第6章 函数 102
6.1 函数的概念 102
6.1.1 函数 102
6.1.2 函数调用 102
6.2 内建函数 104
6.2.1 数学函数 104
6.2.2 转换函数 106
6.2.3 其他函数 109
6.3 自定义函数 113
6.3.1 定义自定义函数 113
6.3.2 参数传递 115
6.3.3 在函数中使用局部变量 115
6.3.4 从函数中返回值 116
6.3.5 调用自定义函数 116
6.4 本章小结 117
6.5 练习题 117
第7章 属性和常数 118
7.1 全局属性 118
7.1.1 _quality(返回或设置当前播放动画的画质) 118
7.1.2 _soundbuftime(设置流式声音预缓冲时间) 119
7.2 影片剪辑实例属性 119
7.2.1 _alpha(设置或返回影片剪辑实例的Alpha透明度) 119
7.2.2 _currentframe(返回正在播放的时间轴当前帧号) 120
7.2.3 _droptarget(返回影片剪辑实例以斜杠语法表示的绝对路径) 120
7.2.4 _focusrect(指定当前获得焦点的按钮周围是否显示黄色的矩形框) 120
7.2.5 _framesloaded(返回影片剪辑实例已下载的帧数)和totalframes(返回影片剪辑实例的总帧数) 121
7.2.6 _height和_width(设置或返回影片剪辑实例的高度和宽度) 121
7.2.7 _name(返回或改变影片剪辑实例名) 122
7.2.8 _rotation(返回或设置影片剪辑实例旋转的角度) 122
7.2.9 _target(返回指定影片剪辑实例的目标路径) 122
7.2.10 _url(返回下载动画文件的URL) 122
7.2.11 _visible(设置或返回影片剪辑实例的可见性) 123
7.2.12 _x和_y(设置或返回动画的x坐标和y坐标) 123
7.2.13 _xmouse和_ymouse(返回鼠标的x坐标和y坐标) 125
7.2.14 _xscale和_yscale(设置或返回影片剪辑水平和垂直方向的缩放比例) 125
7.3 常数 125
7.3.1 true(真)和false(假) 125
7.3.2 newline(新行) 126
7.3.3 mull(空值) 126
7.3.4 undefined(未定义值) 126
7.4 本章小结 127
7.5 练习题 127
第8章 对象概述 128
8.1 内建对象 129
8.1.1 关于内建对象 129
8.1.2 使用内建对象 129
8.1.3 访问对象属性 130
8.1.4 调用对象方法 130
8.1.5 把按钮和文本框作为对象使用 131
8.2 自定义对象 132
8.2.1 关于自定义对象 132
8.2.2 创建对象 132
8.2.3 给自定义类创建可继承属性和方法 133
8.2.4 覆盖继承的方法 135
8.2.5 使分配类的动作脚本在帧前执行 136
8.2.6 给影片剪辑分配类 137
8.3 本章小结 137
8.4 练习题 138
第9章 核心对象及其应用 139
9.1 Arguments(参数对象) 139
9.1.1 参数对象概述 139
9.1.2 参数对象的属性及其应用 140
9.2 Array(数组对象) 141
9.2.1 数组对象概述 141
9.2.2 创建数组对象 141
9.2.3 数组对象的属性 142
9.2.4 数组对象的方法 142
9.2.5 数组对象应用实例 151
9.3 Boolean(逻辑对象) 152
9.3.1 逻辑对象概述 152
9.3.2 创建逻辑对象 152
9.3.3 逻辑对象的方法 153
9.3.4 逻辑对象应用实例 153
9.4 Date(日期对象) 154
9.4.1 日期对象概述 154
9.4.2 创建日期对象 154
9.4.3 日期对象的方法 155
9.4.4 日期对象应用实例 160
9.5 Function(函数对象) 162
9.5.1 函数对象概述 162
9.5.2 函数对象的属性和方法 162
9.5.3 函数对象应用实例 165
9.6 Math(数学对象) 165
9.6.1 数学对象概述 165
9.6.2 数学对象的属性 166
9.6.3 数学对象的方法 167
9.6.4 数学对象应用实例 169
9.7 Number(数值对象) 171
9.7.1 数值对象概述 171
9.7.2 创建数值对象 172
9.7.3 数值对象的属性 172
9.7.4 数值对象的方法 173
9.7.5 数值对象应用实例 173
9.8 Object(Object 对象) 174
9.8.1 Object对象概述 174
9.8.2 创建Object对象 174
9.8.3 Object对象的属性和方法 174
9.8.4 Object对象应用实例 180
9.9 String(字符串对象) 181
9.9.1 字符串对象概述 181
9.9.2 创建字符串对象 181
9.9.3 字符串对象的属性 182
9.9.4 字符串对象的方法 182
9.9.5 字符串对象应用实例 187
9.10 本章小结 188
9.11 练习题 188
第10章 动画对象及其应用 189
10.1 Accessibility(可访问性对象) 189
10.2 Button(按钮对象) 190
10.2.1 按钮对象概述 190
10.2.2 按钮对象的属性 190
10.2.3 按钮对象的方法 196
10.2.4 按钮对象的事件 197
10.2.5 按钮对象应用实例 201
10.3 Capabilities(功能对象) 202
10.3.1 功能对象概述 202
10.3.2 功能对象的属性 203
10.4 Color(颜色对象) 206
10.4.1 颜色对象概述 206
10.4.2 创建颜色对象 206
10.4.3 颜色对象的方法 207
10.4.4 颜色对象应用实例 209
10.5 Key(按键对象) 210
10.5.1 按键对象概述 210
10.5.2 按键对象的属性 210
10.5.3 按键对象的方法 211
10.5.4 按键对象的侦听器 213
10.5.5 按键对象应用实例 214
10.6 Mouse(鼠标对象) 216
10.6.1 鼠标对象概述 216
10.6.2 鼠标对象的方法 216
10.6.3 鼠标对象的侦听器 218
10.6.4 鼠标对象应用实例 219
10.7 MovieClip(影片剪辑对象) 220
10.7.1 影片剪辑对象概述 220
10.7.2 影片剪辑对象的属性 220
10.7.3 影片剪辑对象的方法 224
10.7.4 影片剪辑对象的绘画方法 235
10.7.5 影片剪辑对象的事件处理函数 241
10.7.6 影片剪辑对象应用实例 248
10.8 Selection(选择对象) 249
10.8.1 选择对象概述 249
10.8.2 选择对象的方法 249
10.8.3 选择对象的侦听器 252
10.8.4 选择对象应用实例 252
10.9 Sound(声音对象) 253
10.9.1 声音对象概述 253
10.9.2 创建声音对象 253
10.9.3 声音对象的属性 253
10.9.4 声音对象的方法 254
10.9.5 声音对象的事件处理函数 260
10.9.6 声音对象应用实例 261
10.10 Stage(舞台对象) 262
10.10.1 舞台对象的属性 262
10.10.2 舞台对象的方法 263
10.10.3 舞台对象的事件处理函数 264
10.10.4 舞台对象应用实例 264
10.11 TextField(文本框对象) 265
10.11.1 文本框对象概述 265
10.11.2 文本框对象的属性 265
10.11.3 文本框对象的方法 277
10.11.4 文本框对象的事件处理函数 281
10.11.5 文本框对象的侦听器 282
10.11.6 文本框对象应用实例 283
10.12 TextFormat(文本格式对象) 284
10.12.1 文本格式对象概述 284
10.12.2 创建文本格式对象 284
10.12.3 文本格式对象的属性 285
10.12.4 文本格式对象的方法 288
10.12.5 文本格式对象应用实例 289
10.13 本章小结 289
10.14 练习题 290
第11章 客户端/服务器对象及其应用 291
11.1 LoadVars(加载变量对象) 291
11.1.1 加载变量对象概述 291
11.1.2 创建加载变量对象 291
11.1.3 加载变量对象的属性 292
11.1.4 加载变量对象的方法 292
11.1.5 加载变量对象的事件处理函数 294
11.1.6 加载变量对象应用实例 295
11.2 XML(扩展标记语言对象) 296
11.2.1 XML对象概述 297
11.2.2 创建XML对象 297
11.2.3 XML对象的属性 298
11.2.4 XML对象的方法 302
11.2.5 XML对象的集合 306
11.2.6 XML对象的事件处理函数 308
11.2.7 XML对象应用实例 310
11.3 XMLSoket(XML端口对象) 311
11.3.1 XMLSocket对象概述 311
11.3.2 创建XMLSocket对象 312
11.3.3 XMLSocket对象的方法 312
11.3.4 XMLSocket对象的事件处理函数 314
11.3.5 XMLSocket对象应用实例 317
11.4 本章小结 317
11.5 练习题 317
第12章 创作对象 318
12.1 CustomActions(自定义动作对象) 318
12.1.1 自定动作对象概述 318
12.1.2 自定动作对象的方法 318
12.2 Live Preview(实时预览对象) 319
12.3 本章小结 320
12.4 练习题 320
第13章 用户界面组件及其应用 321
13.1 FcheckBox(复选框组件) 321
13.1.1 复选框组件概述 322
13.1.2 复选框组件的方法 323
13.1.3 复选框组件应用 326
13.2 FcomboBox(组合框组件) 329
13.2.1 组合框组件概述 329
13.2.2 组合框组件的方法 331
13.2.3 组合框组件应用 339
13.3 FlistBox(列表框组件) 341
13.3.1 列表框组件概述 341
13.3.2 列表框组件的方法 343
13.3.3 列表框组件应用 353
13.4 FpushButton(按钮组件) 355
13.4.1 按钮组件概述 355
13.4.2 按钮组件的方法 356
13.4.3 按钮组件应用 359
13.5 FradioButton(单选钮组件) 363
13.5.1 单选钮组件概述 363
13.5.2 单选钮组件的方法 364
13.5.3 单选钮组件应用 369
13.6 FscrollBar(滚动条组件) 372
13.6.1 滚动条组件概述 372
13.6.2 滚动条组件的方法 373
13.6.3 滚动条组件应用 378
13.7 FscrollPane(滚动窗组件) 381
13.7.1 滚动窗组件概述 381
13.7.2 滚动窗组件的方法 382
13.7.3 滚动窗组件应用 387
13.8 FstyleFormat(样式格式对象) 389
13.8.1 样式格式对象概述 389
13.8.2 全局样式格式对象 389
13.8.3 创建自定义样式格式对象 390
13.8.4 样式格式对象的方法 391
13.8.5 样式格式对象的属性 393
13.8.6 样式格式对象应用 399
13.9 本章小结 400
13.10 练习题 401
第14章 创建交互动画的高级技术 402
14.1 概述 402
14.2 循环播放动画 402
14.3 创建自定义光标 403
14.4 读取鼠标位置 405
14.5 捕捉用户按键 406
14.6 创建滚动文本框 409
14.7 设置影片剪辑的颜色 411
14.8 创建声音控制 413
14.8.1 把声音附加给时间轴 413
14.8.2 创建可滑动音量控制 414
14.8.3 创建可滑动平衡控制 416
14.9 检测碰撞 417
14.9.1 检测影片剪辑与点之间的碰撞 418
14.9.2 检测两个影片剪辑之间的碰撞 419
14.10 创建简单的画线工具 420
14.11 综合应用实例 423
14.12 本章小结 427
14.13 练习题 427
第15章 使用影片剪辑和按钮 429
15.1 概述 429
15.2 关于多个时间轴 430
15.2.1 时间轴的层次关系 431
15.2.2 绝对和相对目标路径 433
15.2.3 指定目标路径 436
15.3 使用动作和方法控制时间轴 439
15.3.1 动作与方法的比较 439
15.3.2 在一个影片剪辑中调用多个方法 440
15.3.3 分配动作或方法 440
15.3.4 装载或卸载动画文件 441
15.3.5 动态载入图像文件和声音文件 442
15.3.6 改变影片剪辑的位置和外观 443
15.3.7 拖曳影片剪辑 443
15.3.8 复制和删除影片剪辑 444
15.3.9 动态附加影片剪辑和声音 445
15.3.10 动态创建空影片剪辑 446
15.3.11 用脚本绘图 447
15.3.12 用影片剪辑作为遮罩 448
15.4 使用事件处理函数动作和方法 449
15.5 用脚本处理按钮 450
15.6 使用事件方法 450
15.6.1 调用事件方法 451
15.6.2 给事件方法指派函数 452
15.6.3 用影片剪辑事件处理函数方法触发脚本 452
15.6.4 使用按钮事件处理函数方法触发脚本 453
15.6.5 在影片剪辑中使用按钮事件触发脚本 453
15.6.6 在原型对象中定义事件处理函数方法 454
15.6.7 使用事件方法实例 456
15.7 本章小结 458
15.8 练习题 458
第16章 连接外部源 459
16.1 概述 459
16.2 发送和装载变量 459
16.2.1 加载数据的安全性 460
16.2.2 检查载入的数据 461
16.2.3 使用HTTP连接到服务器端脚本 462
16.2.4 使用LoadVars对象 462
16.2.5 从外部源加载图像或声音 463
16.2.6 使用XML对象 465
16.2.7 使用XMLSocket对象 468
16.3 给Flash播放器发送和从播放器接收信息 469
16.3.1 使用FSCommand 469
16.3.2 关于Flash播放器的方法 473
16.4 本章小结 473
16.5 练习题 473
第17章 脚本调试 474
17.1 概述 474
17.1.1 养成良好的创作风格和习惯 474
17.1.2 编写脚本应注意的几个问题 475
17.1.3 Flash的调试工具 475
17.2 使用调试器 475
17.2.1 远程调试动画 476
17.2.2 显示和修改变量 478
17.2.3 使用查看列表 479
17.2.4 显示和编辑动画属性 480
17.2.5 设置和删除断点 481
17.2.6 跟踪代码行 482
17.3 使用输出窗口 484
17.3.1 使用对象列表命令 484
17.3.2 使用变量列表命令 485
17.3.3 使用跟踪命令 487
17.4 本章小结 488
17.5 练习题 488
第18章 动作脚本语言综合应用 489
18.1 导航菜单系统 489
18.2 多项选择测试 492
18.3 留言本 497
18.4 万年历 502
18.5 坦克大战游戏 508
18.6 简易画板 521
18.7 同学录表单 531
18.8 绽开的花朵 538
18.9 本章小结 539
18.10 练习题 539
附录A 键盘键与虚拟键码对照表 541
附录B 运算符的优先级和结合律 542
附录C 出错信息表 544