dedecms织梦内容管理系统    
首页 | java | C/C++ | PHP | 操作系统 | ajax | 脚本编程 | 安全技术 | 本站下载页 | flex | CRM | 专题 | QQ群 | 测试中心 | 会员中心 | 积分规则
  当前位置:主页>java>文章内容
jsfl与Flash的完美结合
来源: 作者:
  作为一个有些经验的Flash开发者,想必都会形成一些自己的开发习惯,比如很多人都喜欢把主时间轴第一层命名为:“AS”,第二层命名为“Label”,类似这样的劳动都是重复的,我们有办法可以简化它们么?答案是肯定的,于是jsfl隆重登场了。

    什么是jsfl?

    如果说AS是用来在SWF运行时运行的脚本,而jsfl则是在Flash编辑环境下运行的脚本。在这里我不想用太多专业的术语打击新手继续学习的信心,我想先带大家做一个非常简单的实验,实验环境:操作系统(Win XP2),Flash开发环境(Flash 8 简体中文版)。

    1.首先把你的文件后缀名显示出来:→工具→文件夹选项→查看→把“隐藏已知文件类型的扩展名”选项取消。
    2.随便在那里右键新建一个空的TXT文本文件。
    3.打开Flash8,然后新建一个fla,这时候你会看到时间轴上已经自动产生一个图层“图层 1”。
    4.在Flash中打开“历史记录”面板。
    5.然后将时间轴“图层 1”改名为“AS”,这时观察“历史记录”面板,你会发现多了一条“层命名”。
    6.然后右键点击“层命名”,在弹出菜单中选择“复制步骤”。
    7.打开你的TXT文件,然后粘贴,这时你会看到TXT文件中出现一段代码:fl.getDocumentDOM().getTimeline().setLayerProperty('name', 'AS');
    8.保存你的TXT文件,并重命名为:“把图层命名为AS.jsfl”。
    9.将你的“把图层命名为AS.jsfl”放到类似下面路径的文件夹下:
C:\Documents and Settings\Administrator\Local Settings\Application Data\Macromedia\Flash 8\zh_cn\Configuration\Commands
其中,Administrator是你的系统用户名。
    10.这时候点击Flash主菜单栏中的“命令”,你会发现在“运行命令”的横线下面多了一条“把图层命名为AS.jsfl”的选项。
    11.再新建一个fla,然后选择“图层 1”,并执行“命令”菜单中的“把图层命名为AS.jsfl”,你会发现,“图层1”被自动命名为“AS”了。

    上面的实验告诉我们什么?

 相信大家已经能简单的体会到jsfl的作用了,它可以通过一些jsfl脚本自动完成对应的Flash编辑操作。另外我们还应该了解到如下知识才算阶段性毕业
    1.jsfl是一种脚本语言。
    2.jsfl文件应该放在那里。
    3.如何运行一个jsfl命令。

    jsfl脚本只能从“历史记录”面板中生成么?

    当然不是,“历史记录”面板所能生成的jsfl非常有限,要想实现复杂的功能,就必须自己手动写Flash JavaScript代码了。至于jsfl的官方专业解释,大家可以去查看Flash 8帮助文档中的《扩展 Flash》一书,书中还有jsfl的应用示例和程序字典,我就是看着这本书自己研究的。

    jsfl到底有多强大?我们有必要学jsfl么?

 jsfl多强大我还不能确切的告诉你,因为我也没深入学习呢:但用过ASV5的朋友应该都知道,ASV5能把SWF中的所有元素都分离 出来,并产生一个jsfl文件,然后运行这个jsfl文件就可以把那些分离出来的元素组合为一个fla源文件了,由此可见jsfl的强大能力了吧?至于有 没有必要深入学jsfl,那要看你的兴趣和工作需要,火山目前的工作可能需要批量生产一些结构复杂却类似的SWF,于是对火山来说,jsfl就比较重要了。

    个满足火山日常开发习惯的综合例子:

 火山开发习惯:目前我在开始一个面向过程的项目之前,以下三个工作是必不可少的。

    1.时间轴最上层建立“AS”层和“Label”层
    2.AS” 层第一帧写如下注释:
    //================系统设置================//
    //——————变量初始化
    //——————数组初始化
    //——————对象初始化
    //——————系统初始化
    //——————界面初始化
    //================功能逻辑================//
 //================函数模块================//
    3.库里建立三个文件夹:“0-image”,“1-sound”,“2-公用元件”。
    好了,需求有了,我们就开始写代码吧,前面我们已经知道jsfl文件应该放的位置了,这次就直接在那里建立一个“火山习惯.jsfl”,然后写下面的代码:
    //第一步:自动产生AS层和Label层
    fl.getDocumentDOM().getTimeline().addNewLayer("AS");
    fl.getDocumentDOM().getTimeline().addNewLayer("Label");
    //第二步:在“AS”层第一帧上添加注释
    var layerIndex = fl.getDocumentDOM().getTimeline().findLayerIndex("AS");
    fl.getDocumentDOM().getTimeline().layers[layerIndex].frames[0].actionScript = '//================系统设置================//\n//——————变量初始化\n//——————数组初始化\ n//——————对象初始化\n//——————系统初始化\n//——————界面初始化\n//================功能逻辑==== ============//\n//================函数模块================//\n';
    //第三步:在库里自动创建文件夹
    fl.getDocumentDOM().library.newFolder("0-image");
    fl.getDocumentDOM().library.newFolder("1-sound");
    fl.getDocumentDOM().library.newFolder("2-公用元件");

    好了,就介绍到这里了,是不是让你受益非浅呢?如果您有好的学习方法或技巧,请您发贴。我们相互学习相互进步。

上一篇:一种简单的struts级连菜单实现方法   下一篇:JSP和JSF合并 共同打造完美的Web应用(一)
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·java自学路线图
·JSP入门实例教程
·JUnit单元测试(2)
·JUnit单元测试(1)
·什么是Servlet
·用AJAX+J2EE实现网上会议室系统
·浅谈在Java语言中究竟是传值还是
·Java 5.0 多线程编程实践
·Java的文件 读和写
·构造器内部的多态方法的行为
·JSP常用内置对象使用说明
·对于JAVA基础测试中常见的异常问
  相关文章
·一种简单的struts级连菜单实现方
·JSP和JSF合并 共同打造完美的Web
·Struts+Spring+Hibernate
·JSP和JSF合并 共同打造完美的Web
·AOP及其在Spring中的应用
·JSP和JSF合并 共同打造完美的Web
·Hibernate已经落伍了吗?[2]
·JSP和JSF合并 共同打造完美的Web
·Hibernate已经落伍了吗?(1)
·Java 在Client/Server 网络中的
·java删除文件及目录
·Java解析网络数据流的三种特殊方
  相关信息
copy right @ 百家拳软件项目研究室 2007 辽ICP备07011763