最初接触firefox extension是在做网站开发的时候方便调试用的,并没有去做的想法,后来玩一个网页游戏:ogame,接触到了foxgame,看了一下它的源代码,完全js+xul控制的,于是想自己学着去做一些插件用。
第一个插件就是先前的hello world程序了,后来的都是在上面修改的overlay.js 演变成了一个ipcn取密码的插件,算是第一个可以使用的了,用到的技术也不怎么新颖,一些xmlhttprequest的东西


国 庆期间又开始接触另一个网页游戏(我到现在学的东西大多都是由玩游戏中接触到的)chaoswar,从技术上看这是个web2.0的游戏,应用了 xmlhttprequest和json。我于是也利用这个做了一个自动拉i羊的插件,现在还在使用,效果还不错:) (鉴于游戏要反外挂,我就不把源程序贴出来了)里面只是用到了一点新技术,其余的还都是通过xmlhttprequest接受和发送请求,模拟操作而已。

下面介绍一下用到的工具,当然这些是给那些想入门extension制作的人看的
http://ted.mielczarek.org/code/mozilla/
一个mozilla成员的个人网站,提供了很多插件。我用到的就两个:
一、http://ted.mielczarek.org/code/mozilla/extensionwiz/
    自动生成插件的向导
   
二、http://ted.mielczarek.org/code/mozilla/extensiondev/
    我从mozilla论坛http://forums.mozillazine.org/ 问得这个插件之后,很兴奋的感觉,呵呵,这就是自己蒙昧以求的。主要介绍一下如何使用它
    安装好之后,javascript shell, javascript environment, xul editor都是不错的工具
   
    javascript shell, javascript environment不仅对开发firefox extension有用,平时用来调试js也是很不错的。
   
    打开javascript shell,内置函数props向当的好,你可以查看这个对象属性、方法。其实对做这种开发来说更多的是经验,当你根本不知道如何获取页面内容,不知道 firefox的window到底是个什么东西,一切从摸索中开始是很痛苦的(当然发现一块新大陆也是很刺激的)通过props你可以迅速的知道那些是你 需要的。
    还一点就是它可以实时输出变量的值,这点对于调试一个较短的方法很有用,不必要每次都写好了再用js debugger去跟踪
    重要的一点是你可以去研究他的源代码,里面可能会有你想要到的东西。我的firefox插件源代码都打开了一遍(扫视一下)说不定那个角落就有你需要的一个方法。

ps: 对这种技术类的心得,我懒的去组织(很多人也懒得去写),所以写的相当流水,当然看这种文章你也只需要扫视一下,得到自己需要的几个字就行了
posted on 2008-06-18 13:19  Liu Jian  阅读(6186)  评论(1编辑  收藏  举报