• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程技巧 > firefox 扩展开发技巧

firefox 扩展开发技巧

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-12

通过本文主要向大家介绍了firefox扩展,firefox开发者版,firefox开发者,firefox开发者版本,firefox 插件开发等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Firefox Extension
参考:http://developer.mozilla.org/en/Extensions
http://www.ibm.com/developerworks/cn/web/wa-lo-firefox-ext/

目录结构:
chrome.mainfest        // 定义整个扩展的目录结构
install.rdf        // 定义扩展的ID,名称等等信息
chrome/
chrome/content/        // 定义扩展界面(.xul文件),定义扩展界面实现功能的逻辑(.js文件)
chrome/skin/        // 定义扩展界面上用到的图片,属性风格,皮肤文件等(.css,.ico,.png)
chrome/locale/
chrome/locale/en-US/        // 定义翻译字符串(.dtd文件),属性翻译字符串(.properties文件)
chrome/locale/zh-CN/     // 定义翻译字符串(.dtd文件),属性翻译字符串(.properties文件)
defaults/
defaults/preferences/    // 定义需要保存的信息默认值(.js文件)
components/        // 定义扩展逻辑用的方法接口(.xpt, .dll文件)

安装扩展:
将上面目录结构的文件打包成.zip文件,然后改后缀为.xpi,拖到firefox界面上就会弹出安装界面安装就可以了

chrome.mainfest详读

// 示例代码详解
# 在前面加"#"表示注释
# 注册chrome.manifest
# 指定将要读取的修改内容的路径,后面必须带"/" 可以修改Toolbars, menu bars, progress bars,
# and window title bars are all examples of elements that are typically part of the chrome

content    my_extension_name    chrome/content/

# 指定将要加载的皮肤路径,后面必须带"/"
skin    my_extension_name        classic/1.0     chrome/skin/

# 指定将要读取的语言路径,后面必须带"/"
locale    my_extension_name        en-US            chrome/locale/en-US/
locale    my_extension_name        zh-CN            chrome/locale/zh-CN/

# 将后面的文件添加到前面的文件里
overlay    chrome://browser/content/browser.xul    chrome://my_extension_name /content/statusbarOverlay.xul

# 都是可选参数
# style         chrome://URI-to-style                                 chrome://stylesheet-URI [flags]
# override     chrome://package/type/original-uri.whatever     new-resolved-URI [flags]
# resource     aliasname                                             uri/to/files/ [flags]
# application = app-ID
# appversion 操作符 version    (操作符为"=", "<", ">", "<=", ">=")
# os = WINNT(操作系统)
# osversion >= 10.5
# platform格式如下:
# content     global-platform jar:toolkit.jar!/toolkit/content/global-platform/     platform

install.rdf详读    
参考:http://developer.mozilla.org/en/Building_an_Extension

<?xml version="1.0"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">

// 下面的参数是必须要添加的
// <em:id>    当前平台下生成的GUID
// <em:version>      由"."连接的数字
// <em:type>    指定的数字.
        // 2代表Extensions,4代表Themes,8代表Locale,32代表Multiple Item Package
// <em:targetApplication>    指定这个扩展是为那个应用程序使用的
// 格式如下:    <em:id>指定的应用程序的GUID;
//        <em:minVersion>,<em:maxVersion>分别为应用程序的最小最大版本号
//<em:targetApplication>
//  <Description>
//   <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
//    <em:minVersion>1.5</em:minVersion>
//    <em:maxVersion>2.0.0.*</em:maxVersion>
//  </Description>
//</em:targetApplication>

// <em:name>    显示在应用程序界面上的扩展名称

// 下面的参数是可选择添加的
// <em:description>        描述该扩展的功能
// <em:creator>        创始人
// <em:homepageURL>        主页
// <em:updateURL>        更新主页
// <em:optionsURL>
// <em:aboutURL>
// <em:iconURL>
// <em:developer>        开发者
// <em:translator>        翻译者
// <em:contributor>         捐助者
// <em:targetPlatform>    目标程序的系统平台
// <em:localized>        集中显示一些扩展的信息
// <em:locale>    指定将来用那种语言来显示信息(必要),在使用了<em:localized>后用

// 例子:
<em:id>{69354808-F0D7-40CC-BB5F-8C1B8F57CECC}</em:id>
<em:version>0.91</em:version>
<em:type>2</em:type>
<em:name>statusbar settor</em:name>

// 目标程序为firfox
<em:targetApplication>
    <Description>
        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> //firefox的GUID
        <em:minVersion>1.5</em:minVersion>
        <em:maxVersion>2.0.0.*</em:maxVersion>
    </Description>
</em:targetApplication>

// 添加可选的信息
// <creator>Federico Parodi</creator>
// <creator>Stefano Verna</creator>
// <creator>Nils Maier</creator>
// <developer>Federico Parodi</developer>
// <developer>Stefano Verna</developer>
// <developer>Nils Maier</developer>
// <aboutURL>chrome://dta/content/about/about.xul</aboutURL>
// <iconURL>chrome://dta/skin/common/icon.png</iconURL>
// <homepageURL>http://downthemall.net/</homepageURL>
// <optionsURL>chrome://dta/content/preferences/prefs.xul</optionsURL>

</Description>
</RDF>

chrome 详解:
1 chrome/content/
content这个文件夹里的文件类型主要包括.js和.xul两种
.xul文件主要用来实现界面布局的,当然也可以实现简单的逻辑操作,建议所有逻辑都放到相应的.js里去处理,下面给出实例代码statusbarOverlay.xul:
<?xml version="1.0" encoding="UTF-8"?>

// 定义xul中用到的多语言字符串
<!DOCTYPE overlay SYSTEM "chrome:// my_extension_name/locale/statusbarOverlay.dtd">

// 所有的.xul文件都要加的项,id可以随便设置的
<overlay id="bc_ext_overlay" xmlns="

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • firefox 扩展开发技巧

相关文章

  • 2017-05-12IE Cookie文件格式说明
  • 2017-05-12Git 教程之工作流程详解
  • 2017-05-12关于页面刷新,事件重复提交的方法分享
  • 2017-05-12到初创公司工作的五个理由
  • 2017-05-12微信小程序应用号开发体验
  • 2017-05-12玩转markdown 分享几个需要用到的工具
  • 2017-05-12网站被等恶意镜像的解决、反制措施详细教程
  • 2017-05-12分享几个新增备案不关站的代码
  • 2017-05-12算法系列15天速成 第五天 五大经典查找【中】
  • 2017-05-12让程序员都费解的10大编程语言特性

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • redis Fundication
    • 分享10个免费超棒的编程用等宽字体
    • Git 教程之标签详解
    • OAuth 2.0授权协议详解
    • 手把手教你将Vim改装成一个IDE编程环境(图文) 吴垠
    • linux系统产生随机数的6中方法
    • php/asp/asp.net中判断百度移动和PC蜘蛛的实现代码
    • 关于IE11修改User-agent不再支持document.all等
    • PG伪类型anyelement触发pg_pathman的一个bug
    • node安装cnpm代替npm

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有