时间线代码与Document类代码之间的差异

时间:2011-02-06 17:51:38

标签: actionscript-3 document-class

我试图解释编写时间线代码与文档类代码之间的差异,到目前为止我已经:

Timeline code:
- doesn't require a package and class declaration

Document Class code:
- requires a package and class declaration

Timeline code:
- starts working on the top-most line

Document Class Code:
- starts working from the constructor function

Timeline code:
- loops, conditionals and event listeners can be **outside** of a function

Document Class Code:
- loops, conditionals and event listeners must be **inside** a function

这些是否正确,还有什么能让那些正在过渡的人绊倒吗?

2 个答案:

答案 0 :(得分:2)

时间线代码是旧的,不推荐使用,因为它不是结构化的代码方式。仍然,

时间轴代码: - 你无法为函数或变量定义访问控制修饰符,默认情况下,一切都是公开的(据我所知)

文档类代码: - 您可以定义访问控制修饰符

时间轴代码: - 代码在每次控制进入该帧时运行

文档类代码: - 文档类仅初始化一次

时间轴代码: - 变量的生命周期仅在控制在该帧中时

文档类代码: - 成员变量在申请结束前保持活跃状态​​。

修改

时间轴代码: - 与在文档类中的ENTER_FRAME事件中编写的代码相同。

文档类代码: - 可以使用ENTER_FRAME事件实现帧代码的功能。

答案 1 :(得分:1)

在类文件中编写代码时,您正在教授的人可能会想要编写如下代码:

gotoAndStop(2);
movieclipOnFrame2_mc.stop(); // <-- uh oh...

这当然会使它们绊倒,因为他们期望在调用gotoAndStop(2)之后,第2帧上存在的资产将立即可用,特别是如果它们来自AS2背景。他们需要学习处理这种古怪行为的方法。