我没有具体的代码示例,但是有没有一种通用的方法来猜测代码片段是什么版本的Actionscript :1、2或3?
我在某处读到,如果它是时间轴中的代码,它就被认为是ActionScript1。
发布于 2009-11-25 23:35:37
更新:我使用AS1/2的经验有限,这是基于我在论坛上看到的。从评论中可以看出,事件处理的第二种和第三种方法在AS1和AS2中都有效。
处理事件的语法是不同的:
ActionScript 3
addEventListener(MouseEvent.MOUSE_UP, handleClick);
private function handleClick(e:MouseEvent):void
{
//Just do it
}ActionScript 2
onRelease = function():Void{ //it's not void - it's Void
//do something
}ActionScript 1
on(release){
//do something
}你可能会发现这个页面很有帮助:Migrating from AS2 to AS3
添加新子项的AS3方法是先使用new,然后使用addChild
var s:Sprite = new Sprite();
var tf:TextField = new TextField();
this.addChild(s);
s.addChild(tf);它以前是createMovieClip和createTextField方法-但不确定确切的版本。
_root.createTextField("mytext",1,100,100,300,100);
//that is name, depth, x, y, width, height
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;早些时候,如果拥有子类的name属性,即使父类没有名为childName的属性,也可以使用parent.childName从父类访问该子类。使用AS3时,只有父类有一个名为childName的属性(具有适当的类型),并且您已经将子类的引用分配给它(或者您已经在动态类MovieClip上创建了该属性),这才是可能的。存在getChildByName() -但它将返回具有给定名称的第一个子级(并且子级列表中可能有重复的名称)。
发布于 2009-11-26 00:50:17
在AS3和AS1/2之间有很多不同之处,在大多数情况下你会立即看到它(在AS3中查找addChild和addEventListener )。然而,AS1和AS2之间的区别远没有那么明显,但在语言方面可能是最相关的,那就是引入了“类”概念,以及一些用于OOP开发的语句和关键字(类、公共、私有等)。
编辑:看,维基百科对此的解释要好得多:
2003 -2006: Flash 2.0该语言的下一个主要修订版本Flash 2.0于2003年9月随Flash MX 2004及其对应的播放器ActionScript player 7的发布而引入。为了响应用户对更适合大型和更复杂应用程序的语言的需求,ActionScript 2.0提供了编译时类型检查和基于类的语法,如关键字class和extends。(虽然这允许更结构化的面向对象的编程方法,但代码仍将编译为Flash1.0字节码,使其也可以在前面的ActionScript player6上使用。换句话说,基于类的继承语法是现有的基于原型的系统之上的一层。)使用ActionScript 2.0,开发人员可以通过添加类型注释将变量约束到特定类型,以便在编译时发现类型不匹配错误。Java2.0还引入了基于类的继承语法,以便开发人员可以创建类和接口,就像他们在ActionScript和C++等基于类的语言中所做的那样。此版本部分符合ECMAScript第四版草案规范。
http://en.wikipedia.org/wiki/ActionScript#ActionScript_2.0
发布于 2011-05-09 06:12:14
当然,并不是只有ActionScript 1才会在时间线中包含代码。但是,检查您正在编码的版本的一个简单快捷的方法是,只需单击一个框架(无论是否为空)并按F9键。它会在左边说它是什么版本(我很确定..) :)
https://stackoverflow.com/questions/1797669
复制相似问题