Firefox 火狐浏览器,拥有最快、最安全的上网体验,并且火狐拥有超过一万个的 扩展(add-ons),提供各种不同的扩展功能,您可以简单的下载、安装这些扩展以增强您的火狐功能,帮助您更好、更个性化的体验网上冲浪。无论是在网上听音乐,看视频,购物,看新闻...的都能找到相应的火狐扩展能帮助您提升体验

开发步骤


1.附加组件有三种不同的创建扩展的方式:
  [1].基于 Add-on SDK 的方式 (使用一组高级别的 JavaScript APIs 开发无需重启的扩展。推荐使用)
  [2].无需重启扩展的方式 (手动创建无需重启的扩展)
  [3].传统方式 (使用 overly 的方式创建传统的扩展)

2.基于 Add-on SDK 的方式,所需配置:
  [1].Python 2.5,2.6 或 2.7。 确保你已经安装过Python。
  [2].Firefox火狐浏览器(本教程针对最新的浏览器)。
  [3].SDK本身:可以获取SDK的最新稳定版本为 tarball压缩包zip 文件

3.Add-on SDK各平台安装:
  [1].Mac OS X:使用以下命令通过 homebrew来安装SDK插件工具

  1. brew install mozilla-addon-sdk

[2].Mac OS X/Linux:无论选择哪个方式获取tarball压缩包 或 zip 文件,都要对其解压缩作为根路径,并通过shell/命令提示符切换到SDK的根目录下

  1. tar -xf addon-sdk.tar.gz
  2. cd addon-sdk
  3. #Bash的用户(大多数人都是的)
  4. source bin/activate
  5. #非Bash的用户
  6. #bash bin/activate

  上述命令运行完后看到如下结果

  [3].Windows: 下载解压后进入SDK目录直接运行

  1. bin\activate

  通过上述操作就在各平台搭建好了SDK的运行环境

4.制作启动项  

[1].windows:使用 bin\activate\activate.bat批处理脚本脚本,也可以使用命令行setx工具或控制面板激活永久使用。
[2].mac os x/linux:bin\activate\activate bash脚本,还可以在 /bin 目录中创建到cfx 程序的符号链接

  1. ln -s 你的SDK目录/bin/cfx /bin/cfx

在命令窗口输入cfx,检查下

  如上图,就SDK完美完美搞定了。

5.安装npm

  [1].下载Node.js,并安装。          

  [2].添加路径/usr/local/bin/npm 到系统变量$PATH

  1. echo "export PATH=/usr/local/bin/npm:$PATH" >> ~/.bash_profile

6.安装jpm
  [1].终端执行下面命令

  1. sudo npm install jpm --global

  稍等片刻

  至此所有SDK,命令 统统全搞定了,马上来搞个附加组件玩玩。

7.走马观花式的初始化一个空的扩展

  [1].初始化。终端窗口中,创建一个新的文件夹。进入新创建的文件夹,最后执行 cfx init 命令

  1. mkdir my-addon
  2. cd my-addon
  3. cfx init

  出现如下信息,初始化就完成了。

  [2].实现扩展,打开在上一步骤中创建好的 "lib" 文件夹中的 "main.js" 文件,添加以下的代码

  1. var buttons = require('sdk/ui/button/action');
  2. var tabs = require("sdk/tabs");
  3.  
  4. var button = buttons.ActionButton({
  5. id: "mozilla-link",
  6. label: "Visit Mozilla",
  7. icon: {
  8. "16": "./icon-16.png",
  9. "32": "./icon-32.png",
  10. "64": "./icon-64.png"
  11. },
  12. onClick: handleClick
  13. });
  14.  
  15. function handleClick(state) {
  16. tabs.open("http://www.mozilla.org/");
  17. }

  [3].保存以下的三个图标文件到 "data" 文件夹中

  

  [4].回到命令行窗口,执行命令

  1. cfx run

  自动打开Firefox,并在工具栏可见Firefox 图标点击即跳转至 Firefox 主页(http://www.mozilla.org/)

  [5].打包附件组件,执行命令

  1. cfx xpi

  得到如下信息,在my-addon下生成了 my-addon.xpi 文件.

在 Firefox 的 "文件" 菜单中选择 "打开"菜单项。这 将出现一个文件选择对话框:找到  "my-addon.xpi" 文件,打开它并且遵循出现的提示以便安装它,至此大功告成!

SDK及命令工具相关链接


  • Firefox: http://www.firefox.com.cn/
  • Python: http://www.python.org/
  • HomeBrew: http://brew.sh/
  • Add-on SDK: https://ftp.mozilla.org/pub/mozilla.org/labs/jetpack/jetpack-sdk-latest.tar.gz
  • Node.js: https://nodejs.org/en/

本站文章为宝宝巴士 SD.Team原创,转载务必在明显处注明:(作者官方网站:宝宝巴士
转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4801079.html

[Firefox附加组件]0001.入门的更多相关文章

  1. 如何给Firefox附加组件签名

    如何给Firefox附加组件签名 https://developer.mozilla.org/zh-CN/Add-ons/Distribution 2.打开https://addons.mozilla ...

  2. Evernote Clearly :: Firefox 附加组件

    Evernote Clearly :: Firefox 附加组件 Evernote Clearly 10.1.1.2 作者: Evernote Evernote Clearly 可使博客贴文.文章和网 ...

  3. 访问不了firefox附加组件页面怎么办

    最近重新使用火狐浏览器的时候发现访问不了firefox附加组件页面了,一直是一个空白的页面,估计是被墙的原因,于是网上查了查,说是修改hosts即可,我修改后就可以正常访问了.现在分享出来: 在hos ...

  4. 推荐一些我所用的firefox 附加组件。

    firefox之所以强大,很大程度上是因为它有着超多的扩展组件,来实现许多有趣的功能.这几天把我装的firefox附加组件整理下,个人认为是一般上网常用或者可以说是必备的组件,o(∩_∩)o ,晒晒. ...

  5. firefox 附加组件栏安装

    firefox 在升级到 30的版本后,发现附加组件栏不兼容了. 搜索组件,add-on bar 会得到一个 new add-on bar的组件,安装完后发现上面不显示ip, 后来才发现,应该安装Th ...

  6. [Firefox附加组件]0004.上下文菜单项

    在我们平常浏览网页是经常要对网页类容进行一些操作处理,如复制,翻译,搜索,打印打印等,今天我们就学习下如何在Firefox中我们如何通过附加组件实现这些操作. 开发步骤 1.终端窗口运行以下命令创建项 ...

  7. [Firefox附加组件]0002.添加菜单项

    Add-onSDK 还不能为火狐浏览器提供一个API添加新的菜单项.但它是可扩展的设计,所以任何人都可以建立和发布模块,使用插件开发者.大牛埃里克沃尔德写的MenuItems模块,能够使我们很方便的添 ...

  8. [Firefox附加组件]0003.弹出对话框

    Firefox中使用面板(panel)模块来显示弹出对话框,面板的内容通过HTML编写.你可以在面板上运行content script,尽管在面板里的脚本无法直接访问插件代码,但是你可以在面板脚本和插 ...

  9. 浏览器 - Firefox开发者附加组件

    Firefox开发者版本下载地址: https://www.mozilla.org/zh-CN/firefox/channel/desktop/#developer 教程: https://devel ...

随机推荐

  1. 图论--最短路--第K短路(IDA*)(IDA Star)模板

    #include <iostream> #include <cstdio> #include <cstring> #include <queue> us ...

  2. POJ - 2251 Dungeon Master (搜索)

    You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed of un ...

  3. 手把手教你使用ADB卸载手机内置App软件

    [一.前言] 不知道你们有没有那么一段黑暗时期,刚买个手机,手机上内置一堆app,还卸载不掉,然后每天各种广告,手机一共1G的运行内存,那些流氓app还要再占走一些内存,真是让人欲哭无泪啊,后来我就学 ...

  4. rabbitmq启动时出错epmd error for host

    centos7环境下新装rabbitmq,第一次启动时发现出错:ERROR: epmd error for host "****":XXXXXXX 检查发现当前机器的名称为 1  ...

  5. 第3章:关系数据库标准语言 SQL

    目录 第3章:关系数据库标准语言 SQL 3.1.SQL概述 3.1.1.历史 3.3.2.SQL语言的功能 3.3.3.SQL的特点 3.3.4.基本概念 3.2.学生-课程数据库 3.3.数据定义 ...

  6. Linux软件安装和维护

    rpm 早期 redhat package manager 现在 rpm package manager rpm安装的格式: 软件名称-版本号-适用平台.rpm jdk -8u151 -linux-x ...

  7. gulp插件学习01

    1.安装和使用 安装node环境:官网:https://nodejs.org: 命令行输入 npm i gulp -g ,gulp-v查看安装是否成功: 创建项目目录: 进入目录,并在目录中按住shi ...

  8. mac下使用xampp中php显示1044/1045/1046(卸载xampp)

    问题描述 在mac下使用xampp,访问http://192.168.64.3/phpmyadmin/可以正常显示php页面,当创建数据库时提示1044也就是普通用户没有权限 问题猜测 猜测在使用xa ...

  9. 王颖奇 20171010129《面向对象程序设计(java)》第十一周学习总结

    实验十一   集合 实验时间 2018-11-8 1.实验目的与要求 (1) 掌握Vetor.Stack.Hashtable三个类的用途及常用API: (2) 了解java集合框架体系组成: (3)  ...

  10. LabVIEW(数据库自动编号)

    数据库如果字段是自动编号,则在插入数据时,可以不考虑.