Firefox扩展开发 (插件开发) Extension开发 入门教程 5步走 五步走

首先需要知道什么是“Firefox插件”。这里说的“插件”只是一个通俗的说法,其实Firefox这种扩展功能的“插件”包括:扩展extension和插件plugin。

{tip:title=Handy Hint}

Firefox官方网站的解释是:Extensions are small add-ons that add new functionality to your Mozilla program. Plugins are programs that allow websites to provide content to you and have it appear in your browser.(扩展是能够给Mozilla增加一些新功能的附加软件,插件是允许网站向你提供内容并在浏览器中显示的程序).通俗的讲,“扩展”是基于Firefox本身增加的一些实用功能,而“插件”则是在Firefox之外独立编写的程序,用于显示网页中的特定内容如Flash、视频和Java 等.

{tip}

其实我们需要开发的是Extension。

要开发Extension,可以分几步走:

1.了解什么是Extension,一般现成的Extension怎样组成的?里边包含的每个文件具体的作用是什么?

2.了解Firefox处理运行Extension的机制。例如Xpcom,chrome机制等。

3.看看入门例子,用记事本,做一个最简单的扩展,运行一下。另外,使用Firefox,下载一些常用的扩展,并查看一下人家的源代码。

4.正式搭建开发环境。

5.一边学习人家的代码,一边修改代码实现自己的扩展。

第一步和第二步:

当然以官方资料为准:https://developer.mozilla.org/en/Extensions。需要了解:chrome,rdf,manifest,xul,xpcom等概念。

另外郑高强的空间:http://www.cnblogs.com/kenkofox/archive/2009/12/17/1626577.html,这里有简单的Firefox Extension组成说明和Firefox处理Extension的过程分析。

王青师兄的空间有更细致的分析,但较为深入,建议后期再看。

http://ericwangqing.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=cat%3dFirefox%25e6%258f%2592%25e4%25bb%25b6

第三步:

根据这个简单教程,尝试一下hello world:http://www.ibm.com/developerworks/cn/web/wa-lo-firefox-ext/

另外就是在Firefox官方扩展网站下载一些扩展来研究一下了。

安装后,Extension的代码会在磁盘这个位置:

C:\Documents and Settings\UserName\Application Data\Mozilla\Firefox\Profiles\Profile\extensions

第四步:

正式开始使用开发环境。

1.Firefox安装相关的扩展:firebug,1.Firefox 3.0,这个肯定必不可少了。在此推荐3.0,因为最新版3.6或者3.7,那些扩展还没有更新跟进,所以要想安装更多的扩展,还是以3.0为好。

  2.Firebug,这个不必多说。虽然我只是菜鸟,只是用这个来定位某些xul元素对应什么代码,但帮助不少。再到firebug的官网,下载chromebug:http://getfirebug.com/downloads#chromebug(有了chromebug才能更好的调试自己写的chrome文件)

  因为调试js需要开开关关firefox,太麻烦,所以一些代码可以在firebug控制台先测试。在firefox7试验过

  3.Extension Developer。官网推荐,当然安装啦。这个是一套Firefox扩展,包括打包xpi功能,预览xul等。

  4.Spket IDE。开发扩展的IDE,官网推荐的,比较好用。不过好像不能打包xpi,也不能测试。不过只作为编辑器也不错了。用它来看人家的扩展的代码,非常舒服……

  5.xul explorer。预览xul效果。

  6.emEditor。快速打开代码文件,进行修改。另外最重要的功能是:查找。研究人家的代码的时候,JavaScript的代码转来转去,太难找到某些变量或者对象的定义了。用emEditor的“在文件中查找”功能,作用非常大,查找出来的结果有预览……(后来发现,也可以直接用Spket IDE的search--file功能,跟eclipse的查找功能类似,不过缺点就是没有预览,每次要双击了才知道是怎么匹配的。)

7.另外,王青师兄习惯使用eclipse + spket + XULBooster + Firefox

(上述工具基本都能在MDC网站上找到链接下载)

第五步:

慢慢学习Javascript,CSS还有一些细节的技术。尝试修改人家已有的Extension,加入自己想要的功能。

kenkofox@qq.com https://github.com/kenkozheng 欢迎投简历给我,力推腾讯工作机会
分类: Firefox Extension扩展

转载于:https://www.cnblogs.com/developer-ios/p/6078724.html

Firefox扩展开发相关推荐

  1. firefox扩展开发(二):用XUL创建窗口控件

    firefox扩展开发(二):用XUL创建窗口控件 2008-06-11 16:57 1.创建一个简单的窗口 <?xml version="1.0"?> <?xm ...

  2. firefox扩展开发(四) : 更多的窗口控件

    firefox扩展开发(四) : 更多的窗口控件 2008-06-11 17:00 标签盒子 标签盒子是啥?大家都见过,就是分页标签: 对应的代码: <?xml version="1. ...

  3. firefox扩展开发(八) :控件激活

    firefox扩展开发(八) :控件激活 2008-06-11 17:01 当我们用鼠标点击一个控件,或者用TAB键移动到一个控件上时,我们说这个控件被激活 了(focus),离开这个控件时,我们说这 ...

  4. 提高firefox扩展开发效率

    本文介绍一些技巧和开发扩展中使用的工具,主要参考:https://developer.mozilla.org/En/Firefox_addons_developer_guide的第五章(Chapter ...

  5. Firefox 扩展开发 install.rdf和chrome.manifest

    现在我们以一个hello world扩展为例来说明Firefox 扩展的基本运行方式.先下载 Hello World extension,解压缩,下面假定路径是c:\helloworld. 设置fir ...

  6. Firefox扩展开发 Hello World!

    今天尝试开发一个Firefox的扩展.虽然比较简单,网上也有很多教程,但是感觉一些教程写的比较麻烦,在初步的开发过程中并没有用到那些东西,于是自己把开发过程记录下来.我是根据Mozilla官方教程开发 ...

  7. Firefox扩展开发笔记 - 如何给扩展打包,xpi格式

    原创声明:     本文章为原创,欢迎转载,但请给出本文链接,多谢合作.     本文链接:http://blog.csdn.net/epinszteinic/archive/2009/11/13/4 ...

  8. firefox 扩展

    firefox 扩展 <table border="0" cellpadding="4"> <tbody><tr> < ...

  9. 基于Mozilla平台的扩展开发(续)----XPCOM组件篇

    源代码下载:HelloWorld示例.rar 在<浅谈基于Mozilla ThunderBird的扩展开发>这篇入门文章中简单介绍了基于Mozllia平台进行扩展开发的基础知识,但仍然欠缺 ...

  10. 于Mozilla平台的扩展开发

    [url]http://www.cnblogs.com/phinecos/archive/2008/04/25/1171614.html[/url] 于Mozilla平台的扩展开发(续)----XPC ...

最新文章

  1. bash、dash(/bin/bash和/bin/sh)
  2. 2. Add Two Numbers 两数相加
  3. SAP和CRM相关的标准教材,学通了这些,就算是CRM专家了
  4. ES6入门之Symbol
  5. epoll nio区别_【总结】两种 NIO 实现:Selector 与 Epoll
  6. 全面拥抱 FastApi — 多应用程序项目结构规划
  7. 脑瘫男孩17岁考上大学,毕业在家工作每月7500,成为公司骨干
  8. Hi3519A 接入 BT1120或BT656视频
  9. 数学建模中的传染病模型及其编程求解
  10. 《大般涅槃经》略释 净慧法师
  11. win10 远程桌面卡顿_主编教你win10系统使用远程桌面卡顿的步骤
  12. 你这个视频背景太假了?
  13. 位(bit)、字节(Byte)、MB(兆位)之间的换算关系
  14. 现代控制理论基础总结
  15. nrf52840开发笔记(一)------开发环境搭建
  16. 魔力宝贝登录一直服务器无响应,魔力宝贝归来怎么提升战力?
  17. bitlocker正在加密 c盘_为什么BitLocker能给系统盘加密?
  18. 教育期刊《语文教学通讯》杂志简介及投稿须知
  19. 服务创新产品“在线智能问诊”——互联网平台建设...
  20. ElasticSearch支持根据英文或者数字进行模糊查询

热门文章

  1. 京东支付SDK重构设计与实现
  2. cad2016中选择全图字体怎么操作_在学习CAD的过程中,经常会遇到的10个问题,你遇到过吗...
  3. 分享不可不知的CAD经典技巧
  4. 快手sig签名和did egid的注册(操作太快了,请稍微休息一下)
  5. 若依框架----代码生成(详解)
  6. 计算机精品在线开放课程申报书,精品在线开放课程申报书.doc
  7. 数字图像学笔记——8. 几种常见的空间滤波器(均值滤波器、中值滤波器)
  8. 模拟CMOS集成电路设计中的gm/id设计方法及用Cadence Virtuoso IC617仿真有关参数曲线
  9. CodeForces 584 D.Dima and Lisa(数论)
  10. python办公自动化pdf下载_最全总结 | 聊聊 Python 办公自动化之 PDF(上)