`

用jsfl 扩展你的 flash

阅读更多

为什么要学习jsfl?

作为一个有些经验的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-公用元件");

新建一个fla,在“命令”菜单里运行“火山习惯”,看一下效果吧:)

分享到:
评论

相关推荐

    Flash CS5 JSFL开发手册API帮助文档

    JSFL作为Adobe Flash CS5中的一个重要组件,为开发者和设计师提供了扩展Flash Professional功能的能力。使用JSFL开发的小工具,可以增强Flash的工作流程,实现更高效的动画制作和开发过程。JSFL的工作原理是通过...

    例说利用JSFL批改FLASH操作题的方法.doc

    JSFL(Flash JavaScript)是Adobe Flash Professional中的扩展脚本语言,它允许用户通过JavaScript语法控制Flash的创作环境,包括编辑、导出和批改FLA文件。JSFL技术在自动批改Flash操作题方面具有显著优势,尤其...

    jsfl技术文档(帮助文档)

    使用JSFL,你可以创建自定义面板,添加自己的工具和功能,进一步提升Flash IDE的工作效率。 3. **插件开发** JSFL也可用于开发插件,这些插件能够扩展Flash的功能,提供独特的绘图工具、动画效果或其他专业级特性...

    jsfl技术文档

    3. **扩展功能**:开发者可以通过JSFL为Flash添加新的功能,例如自定义绘图工具,或者集成第三方服务。 ### 三、示例解析 在提供的"jsfl技术文档(帮助文档).pdf"中,应该包含了JSFL的详细语法、使用示例以及API...

    JSFL导出元件滤镜配置

    总的来说,JSFL是Flash Professional的强大工具,它让开发者能够以编程方式控制和扩展这个平台。通过学习如何导出元件并配置滤镜,你可以更高效地管理你的Flash资源,并且将这些技巧应用到更大的项目中。无论你是...

    flash元件批量改名命令(jsfl)

    - **命令面板**:打开Flash Professional,选择“窗口”>“扩展”>“脚本”>“脚本面板”,然后将你的JSFL代码复制并粘贴到脚本面板中,点击“运行”按钮。 - **直接运行文件**:将文件"RandomNameLibrary.jsfl...

    JSFL实用代码

    JavaScript for Flash(简称JSFL)是Adobe Flash Professional中的一种脚本语言,用于自动化工作流程、扩展功能和批量处理任务。JSFL提供了对Flash文档(FLA)和Flash影片(SWF)的底层访问,允许开发者编写自定义...

    jsfl:一些jsfl的操作,用于前端做flash使用

    10. **自定义功能扩展**:探索如何根据项目需求编写自定义的JSFL函数或类,扩展Flash的功能。 通过这个压缩包的学习,你不仅可以提升在Flash环境下的工作效率,还能深入了解Flash的工作原理,为处理Flash相关问题...

    jsfl技术文档(帮助文档).pdf

    尽管Adobe Flash Professional及其支持的JSFL在近年来随着技术发展而逐渐淡出主流市场,但对于那些仍使用该软件的用户来说,掌握JSFL仍然是一项有价值的技能。同时,文档中提供的版权和许可信息也提醒我们在使用类似...

    flash批量元件名修改

    通过使用扩展或JSFL脚本,我们可以快速统一地更新元件名称,确保每个元件都有明确且一致的标识,这对于团队协作和后期维护至关重要。 首先,让我们了解一下如何使用JSFL进行元件名批量修改。JSFL语法与JavaScript...

    Animate:用于Adobe Animate的Jsfl动画工具

    6. **插件开发**:对于高级用户,可以使用JsFL编写插件,这些插件可以扩展Animate的功能,满足特定需求。 7. **错误检查和调试**:JsFL还支持错误处理和调试,这对于优化和维护大型项目至关重要。 8. **版本控制**...

    jsfl-support:IntelliJ平台的插件,提供对JSFL API的支持

    总结来说,"jsfl-support"插件是IntelliJ平台上提高Flash专业开发者效率的利器,通过集成JSFL API,它将IDE的功能扩展到了Flash开发领域,为开发者带来无缝的开发体验。无论是新手还是经验丰富的开发者,都可以利用...

    flash中批量链接名脚本

    在使用这个脚本之前,确保你已经安装了Flash Professional,并且熟悉基本的ActionScript和JSFL概念。接下来,按照以下步骤操作: 1. **打开脚本**:首先,找到并双击`批量命链接名.jsfl`文件,这将在Flash中运行...

    Flash CS 中查找类名对应的资源

    `FindResource.jsfl`文件就是这样一个工具,它使用JavaScript for Flash (JSFL) 脚本语言,帮助用户快速定位与特定类名相关的资源。 **什么是JSFL?** JSFL是Adobe Flash Professional中的内置脚本语言,用于自动化...

    序列图转swf,flash动画制作

    4. JSFL(JavaScript for Flash):JSFL是Adobe Flash的脚本语言,用于自动化和扩展Flash的界面。序列图转swf.jsfl可能是一个自定义脚本,它能批量处理序列图并将其导出为SWF文件。通过编写JSFL脚本,可以高效地完成...

    清除未使用的元件JSFL

    清除没有使用的元件,不会清除加了导出名的元件.

    JSFLTool:易于管理JSFL的工具

    打开Flash Pro,然后选择[窗口]-> [扩展名]-> [JSFL工具]以显示该工具。 如果.fla文件已经打开,它将自动显示相同层次结构中的JSFL文件列表。 单击右上角的按钮以显示菜单。您可以从菜单上的“添加本地目录”注册新...

    VB+Flash操作题自动判分(源码+说明)

    JSFL(JavaScript for Flash)是Flash的脚本语言,允许用户通过编写JavaScript代码来控制Flash IDE,这里它被用来实现自动评分功能。 在VB中,开发者可能创建了一个用户界面,让学生提交他们的Flash操作结果,或者...

    批量发布fla(flash插件)

    代码看懂了,又找了些jsfl的教程看了看,于是决定扩展一下功能,写个flash插件出来,至少带个操作界面,用时方便,毕竟这个东东不只是我用。 这个flash插件功能很简单,能够批量发布一个或多个文件夹下的fla文件,...

Global site tag (gtag.js) - Google Analytics