首先在[HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/]下新建一“主键”(注意不是“值”),主键的名称为将显示在上下文莱单中的名称,比如:使用网际快车下载全部链接。在此新建一名为Test的主键。而Test键的默认值为点击莱单项时要执行的“.htm”文件,在此假设为“C:/Test.htm”,其内容如下:
<SCRIPT LANGUAGE="JavaScript">
var parentwin = external.menuArguments;
var doc = parentwin.document;
var sel = doc.selection;
var rng = sel.createRange();
var str = new String(rng.text);
if(str.length == 0)
rng.text = "MY INSERTED TEXT";
else
rng.text = str.toUpperCase();
</SCRIPT>
注意上述内容为IE浏览器的内嵌脚本,执行时窗口是隐藏的。上述内容的意思是当在IE浏览器中选取了一段内容,并点击Test莱单项后,那么选区内的所有小写字母都将变为大写字母,而若没选取任何内容时,则在当前窗口中插入MY INSERTED TEXT。
此外,还可有选择的让Test出现在上下文莱单中,比如:只让Test莱单项出现在有超级链接的地方,则可在Test主键下新建的类型为“DOWRD”的名为“contexts”的值,值的内容为十六进制值22,当然还可为其它的十六进制值,具体意思和内容请参阅MSDN帮助。
下面给出本人测试时所用的注册表脚本内容(文件名为Test.reg):
REGEDIT4
[HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/Test]
@="C://Test.htm"
"contexts"=dword:00000022
懂一点 DHtml 就行了!!!!!!!!