使用AS3开发Flash全站:WebBase

http://www.webjx.com/  2010-04-02 07:32:26  来源:作者:wzhfj 

Webjx核心提示:支持动态地址,栏目过渡切换及高度动态设置。架构的任务是封装了核心交互功能,可以直接继承基类来使用,自动完成子SWF之间的通信传递。

二:如何使用?

1.实现原理。WebBase是一个基类包,所以你的Flash全站主框架页必须继承这个包,当然,这个包也是继承MovieClip编写的,因此,你不用当心在文档类中能否使用gotoAndPlay()的问题。架构原理如图1-1所示:


图1-1 继承与调用流程

2.不管是主页还是子页,一律继承包里的ParentBase基类,当然,如果子页不需要作控制也可以不继承这个类。
继承ParentBase以后,你可以很自由地使用WebBase提供的方法了,先在主页中执行installMenu("config/menu.xml")方法,安装菜单配置的XML文件,这个XML文件编写规范请查看WebBase程序字典。
菜单安装完成后,会调度MenuEvent的INIT事件,可以在这里使用openPage()方法加载你的第一个子SWF文件了。

3.主框架的SWF文件插入到IE中时要先导入两个JS文件(swfobject.js和swfaddress.js),再使用embedSWF("main.swf","flashmov", '100%', '600', '9.0.45');方法插入SWF文件,具体使用方法请查看WebBase程序字典“插入IE中的方法”。

4.由于使用JS 辅助控制,程序运行中AS 与JS 交互会受到播放器的安全限制,如果你在本地直接打开可能会受到阻拦,所以要挂在IIS 服务器上测试。当然你可以到官方网站上做全局安全性设置添加你要测试的地址。官方设置地址:
http://www.macromedia.com/suppor ... ings_manager04.html

三:关于Flash全站开发个人观点

在使用AS3开发Flash全站时,很多人会羞于把代码写在帧上,因为那是AS2.0落后者干的好事。我认为大可不必愧视自己的做法,目前来说,比较流行也是比较高效的做法大多是先在PS中设计好了以后才割过来做成Flash全站的。

这种方式有些你预想好的动画效果很难用纯AS来实现,所以最好就是你在帧上把动画效果做出来,再配合帧控制代码来实现交互效果。当然,你大的逻辑程序要写在类文件中,这是为了方便你开发与维护,而且当你把Flash全站开发熟练以后,你会喜欢把这些类文件考出来修修改改再重新设计界面就能快速地出炉一个新的作品。

这里与你说清楚一下Flash的一些原则,透露些小秘密:

  1. 使用文档类时,如果一个空的Fla文件默认是继承MovieClip的,当使用我们自己的文档类以后,你在帧上写代码也就相当于你在文档类中写代码了,所以有很多类你要在文档类中从新导入一次才能在帧上使用,比如TextField类你要在文档类中导入以后才能使用。
  2. 注意this的用法,我们对这个关键字是熟悉而又神秘。在方法体的内部,this表示调用方法的类实例,可以用来获取调用方。为了避免直接使用this时报错找不到属性或方法,可以把this转为Object类型再来调用所属的方法或属性,比如,var obj:Object=this; obj.install();这个技巧可用于在帧上调用文档类之时。
  3. 在获取时间轴上手工制作的一个影片剪辑时,我们会在属性面板中先对这个剪辑命名,如果这个影片剪辑又做有多个补间动画,也就是说时间轴中多个关键帧里都有这个剪辑,那么只要在第一次出现的关键帧中命名就行了,而且第一次出现的关键帧中必须命名,否则在程序将无法获取该对象。
  4. 注意帧播放延时,只有进入对象所在帧才能获取该对象。
共2页: 上一页 [1] 2 下一页
更多