zoukankan      html  css  js  c++  java
  • Fireworks Extension —— 开发篇(Dom模型)

      如上一篇博文所叙述的,一个很偶然的机会,我得知可以使用Javascript开发Fireworks插件,又注意到了视觉小伙伴的需求,于是便上手开发Fireworks Extension了。

         很幸运的,在充斥着广告的搜素引擎中,我很快地发现已经有人撰写过关于Fireworks开发的教程。特此奉上链接 实战 Fireworks MX 插件开发指南,以免小伙伴们百度google之劳 。在此文中,作者很细致的讲解了Fireworks MX插架开发的步骤,按部就班地做下来,基本上你就可以写写简单的Fireworks插件了。但是,时光的飞逝总会为我们带来些变化,瞥见《实战 Fireworks MX 插件开发指南》的发布日期,2003年,那时候我应该还在学一元二次方程什么的东西,Fireworks也还没有被Adobe买下来。

      本系列的文章,我会着重讲解Fireworks Extension开发中需要注意的东西,特别是一些《实战 Fireworks MX 插件开发指南》一文中没有提到的东西。

         首先要给出的当然是Adobe那焕然一新的API接口

         和网页开发一样,开发Adobe插件的时候,第一个要了解的就是DOM模型。

         

         在日常视觉工作中,我们编辑的每一个Fireworks文件称作Document。通过全局的fw对象,我们有两种方法访问到document对象。

      方法一:

    fw.documents[documentIndex];

      通过这种方法,我们可以通过文档的序数访问到文档。

      方法二:

    fw.getDocumentDOM();

         通过方法二,我们可以直接访问到当前激活的文件。

         获取document之后,其实我们仅能操作该document当前page里面的东西。

    fw.getDocumentDOM().changeCurrentPage(pageIndex);

         通过changeCurrentPage方法,可以切换当前的page。在document对象中有一个pagesCount属性,返回page的总数。

         在之后我们就可以访问到我们需要操作的各种object了。在Fireworks中,层文件夹也是一个element object, 你需要通过isLayer方法来判断元素是不是层。在document对象中,document.layers属性会储存所有document中的层对象的引用,无论怎么嵌套的层都可以在这个数组中直接遍历找到。

         和获取document的方法类似,获取element也有两种方法。

      方法一:

    fw.selection[selectIndex];

      方法二:

    document.layers[layerIndex].elems[elementIndex];

        两个函数的区别也和docment一样。

        通过Firewokrs暴露出的接口,可以看到,Adobe更希望我们直接对dom进行操作,提供了两个直接获取当前文档和当前选中对象的函数。下一篇博文中我将进一步介绍Fireworks dom操作中的其他一些细节。

        转发请注明出处:http://www.cnblogs.com/Arthus/p/3740542.html                       

     

         

  • 相关阅读:
    [py]函数小结
    [py]class的特殊方法
    [py]数据描述符优先级
    [py]python中__new__作用
    [py]django重置密码
    [py]多态的理解
    [py]类属性和实例属性
    【转】比较详细的Asp伪静态化方法及Asp静态化探讨
    VB6 XArrayDB | Xarray ReDim 用法
    vb6 使用msxml2.serverxmlhttp 请求HTTP
  • 原文地址:https://www.cnblogs.com/Arthus/p/3740542.html
Copyright © 2011-2022 走看看