Electronic Joint Business

Solution for E-Business

mozilla

用MinGW64编译及使用Spider Monkey引擎

文章评价:

SpiderMonkey 是用 C 语言编写的的 JavaScript 引擎,它支持 JS1.4 和 ECMAScript-262 规范, 可以分析、编译和执行脚本,并根据 JS 数据类型和对象的需要进行内存分配及释放操作。利用该引擎可以让你的应用程序具有解释 JavaScript 脚本的能力,目前已有许多项目都采用了 SpiderMonkey 引擎,比如 MongoDB, K-3D 等等。本文我们会简要介绍 SpiderMonkey 的编译方法,以及如何集成 SpiderMonkey 到您自己的项目中。

编译 Spider Monkey
Spider Moneky 依赖于 NSPR 软件包,NSPR 的全称是 Netscape Portable Runtime,它提供线程、线程池、垃圾收集、mutex 和 condition variable 等等诸多特性,并且独立于平台,是相当有用的一套 API。换句话说,NSPR 是屏蔽不同操作系统的差异性的一套API。

关于 NSPR,另文介绍。

在 Mozilla 站点上可以下载 NSPR 软件包,最新的版本是4.8.6,将它解压到 MSYS 的 $HOME 目录下。

>>> 阅读全文

 

, , , , ,

用Visual Studio开发Firefox扩展 (一) 简介与准备

Firefox插件简介
Extension就是一个zip包,里面有规定的一些必要文件。这个可以下载几个插件看一下他们的目录结构就好了。我下载了一个 QuickNote,看了一下,主要包括一个install.rdf(安装包相关信息和文件资源路径等配置)、chrome.manifest(设置各种 XUL文件路径以及其他的一些资源文件路径)、chrome文件夹(里面放着插件的所有源文件),不过chrome文件夹里面的文件我还没有过多研究。

Plugin好像是另外一码事了,在Mozilla Developer Center的Plugin开发介绍文中有这么一句:Plugins are different from extensions, which modify or enhance the functionality of the browser itself. Plugins are also different from search plugins, which plug additional search engines in the search bar. (插件与扩展不同,它更改或者改善了浏览器自身的功能。插件与搜索插件又不同,搜索插件在搜索工具栏上添加了额外的搜索引擎。)

我的理解,插件可以让你在FF中使用自己的View来展示、用自己编写的二进制文件来做某些事情,不仅仅是利用FF自身支持的一些特性和功能。而扩展相对来说就不需要这些东西,只利用FF的开发API就好了。Firefox插件,也叫Mozilla插件,它是一段程序。通常,界面使用XUL语言(XML的一个子集)或者XUL内嵌HTML编写,而程序逻辑使用ECMAScript (Standard ECMA-262)(俗称JavaScript)编写。

XUL可以是独立的窗体,可以是对话,也可以是overlay。Overlay可以用于修改已经构建好的界面。下面是一段示例的XUL代码:

<overlay id="main-overlay" xmlns:html="http://www.w3.org/1999/xhtml"
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 <menu id="file_menu">
  <menuitem name="Example One"/>
  <menuitem name="Example Two"/>
  <menuitem name="Example Three"/>
  <menuitem name="Example Four" position="1"/>
 </menu>
</overlay>

而JavaScript可以用来定义程序的行为。CSS可以用于自定义样式,而XPCOM可以用于调用Firefox提供的接口。另外,现在有一些JavaScript Library,可以直接使用而降低代码难度。

>>> 阅读全文

 

, , , , , , ,