http://www.ibm.com/developerworks/cn/web/wa-lo-firefox-ext/
Firefox的个人配置文件夹
配置文件是Firefox存放各项设置的地方,除此之外,浏览网页时存放的缓存、安装的扩展和主题也在其中。如果想将Firefox恢复到初始状态,只需删除配置文件夹即可。部分文件说明:
[*]prefs.js:Firefox的各项设定[*]bookmarks.html:Firefox的书签[*]cookies.txt:Cookies[*]hostperm.1:Cookies 允许/禁止列表[*]downloads.rdf:下载历史[*]formhistory.dat:表单输入历史记录[*]mimeTypes.rdf:文件类型处理设定[*]search.rdf:搜索栏历史记录[*]key3.db:密码文件,必须和 signons.txt 一起保存[*]signons.txt:密码文件,必须和 key3.db 一起保存
缓存的位置:
Firefox浏览过的网页的缓存文件默认是在个人配置文件夹的\cache\目录下
扩展的位置:
安装后的Extensions(扩展)就放在配置文件夹的extensions子目录下。删除extensions这个子目录就可将已安装的extensions全部删除。
主题的位置:
主题跟扩展是安装一个文件夹内的,如果是global安装,在firefox\extensins下的某个文件夹内;如果是local安装,在profile\extensons下某个文件夹内
win系统下,Firefox 的主题保存在类似下面这个文件夹中:
local:
C:\Documentsand Settings\UserName\Applicationata\Mozilla\Firefox\Profiles\dbuoun8g.default\extensions\{00D4154F-96D3-41ff-8E8E-113596D8670B}\
global:
D:\Program Files\Mozilla Firefox\extensions\{972ce4c6-7e08-4474-a285-3208198ce6fd}\
打开配置文件管理器 和 如何创建多个配置文件
在Firefox的启动路径后加上参数“-p”(不带引号)或是“-profilemanager”(不带引号)即可。如 firefox -p,firefox -profilemanager。
如果是 Windows 系统,也可从开始菜单中选择“开始-->运行”
输入Firefox的完整路径,然后加上参数“-p”(不带引号),如:
"C:\Program Files\MozillaFirefox\MozillaFirefox.exe" -p
打开配置文件管理器,您就可以增加、删除、重命名原来的配置文件了。另外请一定注意‘-p’前有空格。
其中的‘C:\Program Files\Mozilla Firefox\’是指的Firefox.exe文件的具体路径,请根据自己情况调整。
Linux下则先切换到 Firefox 目录下,然后运行 ./firefox -p 或 ./firefox -profilemanager 来启动Firefox,并创建配置文件。
如:cd /usr/lib/firefox
./firefox -profilemanager
注意:①打开配置文件管理器前,必须关闭Firefox的所有进程。WINDOWS中在任务管理器中查看和关闭Firefox;Linux下则用ps和kill命令查看和关闭Firefox。
②给Firefox建立新的配置文件时应该建一个新文件夹,少数朋友可能会图方便而利用一个已有的文件夹,比如放到桌面上,强烈建议您不要这样做。这是由于Firefox在删除其配置文件时,会删除该文件夹内的所有文档,若把配置文件夹放到桌面上,那么在删除这个配置文件后,你就会发现,除了我的电脑、我的文档、回收站之外,其余东西都没了。因此请一定注意不要省略“新建文件夹”这一步。
在创建了多个配置文件(profile)的情况下,在启动时如何直接使用不同的配置文件?
创建了多个配置文件,启动时又不想启动配置文件管理器,只需在加“-p”时在后面带上创建的配置文件夹名称就行。
例如,创建了多个配置文件后再启动最初默认的配置文件,使用的参数为:
-p"default"
要注意的是在-p后,"default"前有空格,并且加参数时必须区别大小写。
至于其余的配置文件的名称,则是在配置文件管理器中看到的名称。
例如,在配置文件管理器中名称为 Default User 的配置文件,那么直接启动它的参数是:
-p"Default User"
要更改 Firefox 的快捷方式以打开的配置文件,只需在Firefox的快捷方式上点击“鼠标右键→属性”,将 -p"profilename"添加到目标栏中即可。
最后要说明的是,添加的配置文件名是在配置文件管理器中显示的名称,不一定是磁盘中配置文件的实际名称(除非两个名称相同)。
Firefox: 开发人员必备的 6 个扩展
[*]FireBug:在 Web 调试工具中,FireBug 现在几乎已经成为了众多调试工具的标准,其强大程度绝对超乎你的想象。FireBug 可以快速分析出页面的DOM 结构,并生成可折叠、展开的树状图。对于每一个元素,我们都可以通过 FireBug 来实时更改它的属性、值甚至 CSS,特别是对 CSS的修改,结果会实时展现在页面上,这对 Web UI 人员来说绝对是个非常实用的功能。而对于开发人员来说,FireBug 可以为Javascript 设定短点,可以通过简洁的函数监控变量、生成日志方便调试。FireBug 绝对无愧于 Firefox中第一调试工具的称号。[*]WebDeveloper:老牌 Firefox 扩展调试工具,发展到现在,虽然功能明显不及 FireBug,但有些功能还是非常实用。例如根据预设调整窗口大小、显示 HTTP 相应报头、快速标准验证等都是非常实用的。对于 Web Developer 们还是个必不可少的扩展。[*]TabMixPlus:Web Developer 们浏览器的一大特点,就是开得标签巨多无比。这时一个良好的标签管理扩展就必不可少了,在这方面,TabMixPlus 还是最为强大的。当然如果机器配置不好,可以用功能相对较少的 Tab Mix Lite CE 来代替。[*]View Source Chart:查看源码的好助手,不仅可以将 HTML 代码整理得非常易读,而且通过语法高亮进一步提高可读性。[*]IETab:不管你怎么憎恨 IE,做出一个 Firefox Only 的网站还是会意味着失去 80% 的访客,因此最终成品在 IE中测试一下还是很有必要的。有了这个扩展,你就不用再费力的去再开一个 IE 窗口了,直接一点击就可以切换(相当于为 Firefox 武装上了IE 引擎)。[*]Personal Menu:对于网页开发者来说,一个浏览器有尽可能大的工作区面积是非常重要的。Firefox 上的菜单多少有点鸡肋,用这个扩展既可以隐藏掉菜单,而且还可以毫不损失它的功能,非常爽。Firefox中的7个隐藏页面
很多人都把IE的启动页面设成“about:blank”以加快IE的启动速度,当然,Firefox中也具有类似的功能:about: 以不带参数的“about:”命令启动Firefox会显示Mozilla的“关于…”的信息,跟从菜单中选择的帮助-关于效果一样,严格来说它并不算是隐藏页。
about:buildconfig 显然,这样会显示构建平台配置和参数。
about:cache 显示用户磁盘缓存的信息与统计数据,包括缓存所在目录等。而Firefox在默认情况下是不允许用户查看缓存了的网页的。
about:config 这里有很多设置选项,一旦设置错误浏览器就不能正常工作了,所以用户要小心设置。
about:plugins 这个参数将会显示Firefox上安装的所有插件的信息。
about:credits 显示所有对Firefox的开发作出贡献的人员列表,用户可以进行投票。
about:Mozilla 奇怪的事发生了,这会显示“Mozilla之书”,但实际上并没有显示什么实际的书。
5个必备的firefox开发插件
1. firebug 被评论为“感动到痛哭流涕的插件”,用来调试javascript,修改界面HTML,CSS,查看网站文件链接等,都非常的棒!1.1 YSlow 用来查看页面中的元素加载时间等
2. FireShot 截屏工具,可以对多屏页面进行截图,并带有常用的注释工具,可以对截图进行文字绘图说明。
3. MeasureIt 一把尺子,用来量界面像素宽度,对CSSer和HTMLer非常有用。
4. SeoQuake SEO工具,可以查看Google,Yahoo,Baidu等搜索引擎的收录状态,alexa排名,whois记录等等,功能比你想象的要还要多。
5. User Agent Switcher 用户浏览器切换器, 和IEtab不同,他不是切换你本地使用的浏览器,而是一种伪装工具,你可以一直使用Firefox,但是却告诉你正在访问的网站,现在是一个IE用户,或者是yahoo爬虫在访问他的站。
如何编写Firefox扩展
如何编写Firefox扩展(1)-技术准备使用Firefox很长时间了,很喜欢这只"小狐狸",特别是它提供的丰富多彩的扩展功能。一直都想学习一下关于编写Firefox的扩展的知识,现在终于可以开始了,我将边学边把自己所掌握的知识书写出来,以方便大家学习.
收集了一些编写Firefox扩展的相关资料,如果英文够好,请直接查看这些资料,完全忽略我的文章
Extension development
Getting started with extension development
How to write Firefox extensions using BugMeNot as an example
How to create Firefox extensions
Writing an Extension for Firefox
Firefox Extension Tutorial
Building an Extension
下面是编写Firefox扩展所需掌握的相关技术
开发Firefox扩展的过程中,将会接触到以下技术,您不需要精通这些东西,但最好能对他们都比较熟悉.
XUL (XML User-Interface Language).基于xml的UI界面定义技术
JavaScript. 这个不用多讲了,大多数扩展使用它来完成.
DOM (Document Object Model). HTML文档结构模型.
XPCOM/XPConnect. 用来连接Mozilla 提供的XPCOM (Cross-Platform Component Object Model) 功能组件包, 可以用来访问 preferences 配置数据库, filesystem文件系统 以及其他Mozilla提供的功能(可以使用 JavaScript, C++, 甚至是 Python PyXPCOM来编写这个扩展).
CSS (Cascading Style Sheets).
XBL (XML Binding Language). 用来扩展XUL, 允许创建新的风格的UI界面.
RDF (Resource Description Framework). 在扩展中,用来描述某些数据的存储格式。.
如何编写Firefox扩展(2)-配置开发环境
想要快速方便的开发Firefox扩展,配置一下开发环境,做些必要的准备是必须的。
设置Firefox配置
为了避免开发中的扩展平时使用的Firefox的性能,我们需要重新创建一个配置,并且将其命名为"dev",然后用以下的命令行来启动这个配置为开发环境的Firefox
start "" "%ProgramFiles%\Mozilla Firefox\firefox.exe" -no-remote -P dev
想要运行默认的配置,使用 "firefox" 或 "firefox -P default".
您还可以同时运行稳定版和开发中的Firefox版本,来检查扩展的兼容性y (Installing Firefox 3 or Minefield while keeping Firefox 2).
开发环境配置
下面的这些配置可以使开发调试扩展更加方便。查看 Editing Configuration Files 了解更多信息。 下面的这些选项,默认是不会在about:config中列出来的,所以需要手工添加它们。方法是,在你的firefox的配置目录下找到user.js ,如果文件不存在,就手工创建一个,然后添加以下几行
user_pref("nglayout.debug.disable_xul_cache",true);
user_pref("browser.dom.window.dump.enabled",true);
提示:firefox3.0中user.js已经被prefs.js代替了
下面是一些可用的配置选项、
javascript.options.showInConsole = true. 记录错误日志到 Error Console.
nglayout.debug.disable_xul_cache = true. 禁止XUL缓存,这样当修改界面元素时,就不需要重新启动firefox了。此选项只有当你使用了目录而不是jar的格式安装扩展时有效,并且修改XUL的行为时仍然需要重新启动。
browser.dom.window.dump.enabled = true. 允许使用dump() 命令输出信息到标准控制台 See window.dump for more info. You can also use nsIConsoleService from privileged script.
javascript.options.strict = true. Enables strict JavaScript warnings in the Error Console. Note that since many people have this setting turned off when developing, you will see lots of warnings for problems with their code in addition to warnings for your own extension. You can filter those with Console2.
extensions.logging.enabled = true. This will send more detailed information about installation and update problems to the Error Console.
用来辅助进行Firefox扩展开发的一些Firefox扩展
名字有点拗口,但绝对都是好东西
DOM Inspector, an option of a custom installation.
Venkman, a JavaScript 的调试工具.
Extension Developer's Extension 扩展开发工具,可以用来生成xpi文件,设置开发选项,等等,强烈推荐。
Console2
Chrome List
Firebug javascript,http调试工具,功能强大,强烈推荐
Execute JS
XPCOMViewer, an XPCOM inspector
自定义代码位置
为了使每次修改代码后,不需要重复的进行扩展的安装,你可以将你的源码放到Firefox的配置目录下,Firefox会自动检测并加载你的扩展
在 install.rdf 中找到扩展编号,如 em:id="{46D1B3C0-DB7A-4b1a-863A-6EE6F77ECB58}"
在your_profile_directory/extensions/ 目录下创建一个目录,目录名为刚刚找到的编号(eg. `your_profile_directory/extensions/{46D1B3C0-DB7A-4b1a-863A-6EE6F77ECB58}`) (Find your profile directory)
将你的开发文件,复制到这个目录下
重新启动Firefox.
Google Maps API 中文開發手册 - API 概要
GMap类GMap的每一个实例表现为页面上的一个地图,可以创建这个类的多个实例 每个地图被包含在一个container之中,比如一个DIV标签,除非明确指定,地图将使用相应container的大小.
GMap类提供了操作地图点(中心和缩放度)和添加删除标记(比如GMarker和GPolyline实例)和方法. 同时也提供了一个打开"信息浮窗"的方法,地图上同时只能有一个信息浮窗.
更多信息请参看GMap类参考
事件
利用事件监视器,你可以在程序中加入动态的内容,每个实例提供一些指定的事件,你的程序可以利用静态方法GEvent.addListener或GEvent.bind监视这些事件. 例如,以下代码片断在每次用户点击地图的时候显示一个警告:
var map = new GMap(document.getElementById("map"));
GEvent.addListener(map, "click", function() {
alert("You clicked the map");
});
GEvent.addListener使用一个函数作为第三个参数,这个函数作为事件处理器,在事件被触发时运行. 如果想绑定一个对象的方法到事件,可以使用GEvent.bind.例如:
function MyApplication() {
this.counter = 0;
this.map = new GMap(document.getElementById("map"));
GEvent.bind(this.map, "click", this, this.onMapClick);
}
MyApplication.prototype.onMapClick() {
this.counter++;
alert("You have clicked the map " + this.counter +
this.counter == 1 ?" time.":" times.");
}
var application = new MyApplication();
信息浮窗
Map类有一个信息浮窗,可以在地图上以浮动窗口模式在地图上显示HTML内容.
基本的浮动窗口方法是openInfoWindow,这个方法以一个点和一个HTML节点作为参数,这个HTML节点被添加到信息浮窗容器里面,并显示在相应点处.
openInfoWindowHtml差不多,但是它使用HTML字符串作为参数.openInfoWindowXslt则利用XML节点和XSLT文档的URL地址来生成信息浮窗内容,如果该XSLT文档还没有被下载,则会自动异步下载此文件.
如果需要在标记上显示信息浮窗,你可以传递第三个参数(可选)给出窗口顶端和给定点位置的像素差. 比如你的标记高度是10px,你可以使用GSize(0,-10)作第三个参数.
GMarker类还提供了openInfoWindow方法用来处理像素值内容,所以不用担心在程序中计算像素的问题.
标注
标注是一些绑定到地理坐标的对象,当移动、缩放地图或切换模式(比如从地图到卫星图)时,标注也会跟着变化.
Maps API提供两种标注:标记(地图上的图标)和折线(根据地理位置绘制的折线)
图标和标记
TheGMarker构造函数使用一个图标和一个点作为参数,并提供一些类似"点击\"的事件,看这个创建标记的例子
创建标记最困难的地方是指定图标,复杂在于一个图标需要几个不同的图片构成.
每一个图标至少都有一个前景图片和一个阴影图片,阴影必须是前景图的45度视角的形状,并且左下角和前景图的左下角重叠,还必须是24-bit PNG灰度图片,才能刚好使图标看起来像站在地图上一样.
TheGIcon需要指定图标使用的图片文件的大小以便以合适的大小显示这些图片,一下是指定一个图标的最基本的代码:
var icon = new GIcon();
icon.image = "http://www.google.com/mapfiles/marker.png";
icon.shadow = "http://www.google.com/mapfiles/shadow50.png";
icon.iconSize = new GSize(20, 34);
icon.shadowSize = new GSize(37, 34);
TheGIcon类提供有超过7个的属性必须设置以保证图标在浏览器上的兼容性和功能. 比如imageMap属性指定图标不透明部分的形状,如果你没有设置这个属性,在Firefox/Mozilla浏览器上,整个图标(包括透明部分)都能被点击. 看这个GIcon类参考了解更多信息
折线
GPolyline构造函数使用一组地理点最为参数,你也能指定颜色、线宽和透明度 颜色采用老的HTML样式,比如"#ff0000".GPolyline不支持直接使用颜色名字. 例如以下代码会创建一个10像素宽的红色线段:
var polyline = new GPolyline([new GPoint(-122.1419, 37.4419),
new GPoint(-122.1519, 37.4519)],
"#ff0000", 10);
map.addOverlay(polyline);
在IE浏览器中,我们用VML来绘制折线,而在其他的浏览器之中,我们使用Google服务器上的图片,并在地图变化时重新刷新图片.
控件
addControl用来添加控件,Maps API可以让你在地图上使用如下控件:
* GLargeMapControl在Google Map中使用的大缩放/定位控件
* GSmallMapControl在Google Map中使用的小缩放/定位控件
* GSmallZoomControl一个小的缩放控件(不能定位),用在小窗口中显示驾驶方向
* GMapTypeControl地图类型切换控件(如:地图和卫星图)
例如,要在地图上添加一个缩放/定位控件,你可以在地图初始化时使用如下代码:
map.addControl(new GLargeMapControl());
这样,控件就会被添加到地图的左上角
XML和RPC
Google Maps API提供了一个创建XmlHttpRequest对象的方法,当前可以在IE, Firefox, and Safari上运行正常,如下:
var request = GXmlHttp.create();
request.open('GET', "myfile.txt", true);
request.onreadystatechange = function() {
if (request.readyState == 4) {
alert(request.responseText);
}
}
request.send(null);
你还可以使用静态方法GXml.parse来解析一个XML文档,使用XML字符串作为参数,这个方法对所有的浏览器兼容. 如果本地浏览器不支持XML解析,则会采用一个基于JavaScript的解析器,可是不能保证这个解析器一定能正常的解析.
注意Google Maps API不需要使用XML或XmlHttpRequest因为这是一个纯JavaScript/DHTML的API. 一、想要编写Firefox插件最简单的技术基础就是XML,JavaScript,剩下的就是稍稍的模仿能力和不知厌倦的尝试精神。
二、需要的工具如下:
1、UltraEdit (编辑相关的文件)
2、1st JavaScript Editor (编写JavaScript)
3、还需要以下Firefox插件用于调试:Chrome List, FireBug。其中尤其以FireBug最为重要,在开发过程中起到的作用实在是太大了。节省了很多查找bug的时间。
三、开发过程中可以参考的网站:
http://www.xulplanet.com/
http://blog.donews.com/limodou/category/35193.aspx
http://developer.mozilla.org/en/docs/Extensions
http://www.firefox.net.cn/newforum/
http://kb.mozillazine.org/Getting_started_with_extension_development
http://developer.mozilla.org/cn/docs/XUL
四、最为有用的例子。因为Firefox的插件都是源代码的打包文件,所以其他的Firefox插件都是很好的例子,在我的开发过程中觉得以下的例子比较有用:ChatZilla, Googlebar Lite, QuickNote, Super DragAndGo.
spket 1.6.12 **版
http://tmsoft.lsxy.com/images/download.gifspket-1.6.15.2.rar (10.26 MB , 下载:206次) http://tmsoft.lsxy.com/images/download.gifspket-1.6.11pojie.zip (4.22 MB , 下载:186次)网上找到了1.6.15的,最新的1.6.15.2不能用,经过一番努力,找到了一个**补丁,不敢独享,奉献给大家。
先下1.6.15.2的插件,安装完,然后把提供的jar文件覆盖原来的(plugin目录下)即可
http://tmsoft.lsxy.com/images/download.gifcom.spket.ui_1.6.15.2.rar (411.16 KB , 下载:161次) 基于 Mozilla 的扩展开发(入手好文)
http://www.lewislv.org/mozilla-ext/mozilla-ext.html#preface
视频教程
http://v.youku.com/v_show/id_XMzE1ODQ5NjQ=.htm
一个论坛
http://mozillafirefoxd.cn/index.php
js调试好工具
http://www.lewislv.org/blog/?p=35
[ 本帖最后由 faunus 于 2008-11-21 11:16 编辑 ]