使用Javascript制作IE插件

大家好,我是RickTsuei,今天像大家介绍一个使用Javascript制作IE插件的小技巧。一直以来我都想尝试制作一个IE插件,但痛苦的是作为Web开发人员,对C++了解的是少之又少,想想如果IE给我一个能调用Javascript去操作HTML文档的接口,那该有多好啊。结果,我发现真的有这样的方法。这是最近使用一个简单的HTML文档分析工具,发现它只有一个HTML文件和一个INF文件,于是我开始研究它的原理,发现原来一切是这么简单。

使用Javascript制作IE插件的步骤如下:

1. 准备HTML

因为我还没有什么经验,不明确要写些什么东西,于是我写了一个空白的HTML文本并命名为SampleIEAddon.htm。

2. 将HTML文件关联到IE上下文菜单的注册表项

在”开始”菜单选择”运行…”,输入命令REG ADD "HKCU"Software"Microsoft"Internet Explorer"MenuExt"SampleIEAddon" /ve /d “file:///d:/%20/sampleieaddon.htm”

然后我们开始写HTML文档的内容,原来HTML文档中只需要写脚本块就行了,先写一个”Hello World”吧。

< Script Language=”Javascript” Type=”Text/Javascript”>

Alert(‘Hello World!’);

< /Script>

然后我们打开一个新的IE,点击鼠标右键,我们会在上下文菜单中看到我们追加的”SampleAddon”项目,点击,果然出现了Hello World!的消息框。

但这远远不是我们要的,因为我们需要去操作的是IE里面的文档,但实际上我们现在能操作的只是自己写的这个HTML文档而已。所以让我们再进一步,我看了那个“软件”的HTML文档,发现它使用了叫” external.menuArguments.document”的对象,而这个对象正是IE浏览器中HTML文档的文档对象(document)。于是我做了一个在任何网页中运行后,鼠标点击都会出”Hello World!”消息框的例子,Sampleieaddon.htm内容如下:

< script type="text/javascript" language="javascript">

var doc=external.menuArguments.document;

var html=doc.documentElement.outerHTML;

html+= '< script>document.onmousedown=function(){alert("'Hello World!"');};< /scrip'+'t>';

doc.writeln(html);

< /script>

希望本文对大家有所帮助,如果大家得到启发做了什么小工具的话,记得发过来,我也希望与大家交流,向各位学习。