添加一个注册表项,就会出来一条右键菜单项。点击之后调用一段保存在htm文件中的js脚本,就能打开网址了。这里还需要判断一下,选中文字是否包含协议部分(比如http://),如果不包含必须加上,不然会默认成当前域名的下一级路径。除了这种调用js脚本的右键菜单命令,还有调用dll和exe的,这里就不说了。贴代码。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\在新选项卡中打开]
@="C:\\Program Files\\Internet Explorer\\openURL.htm"
"Contexts"=dword:00000010
如果不想放在Internet Explorer目录下,可以把红字部分改成其它路径(注意双反斜线)。蓝字部分是在右键菜单中显示的文本。Contexts值决定了在什么时候显示这条命令,10(16进制)就是在选中文字时,这个也是试出来的。
<script language="javascript">
var oWindow = window.external.menuArguments;
var sText = oWindow.document.selection.createRange().text;
if (sText.indexOf("://") == -1)
oWindow.open("http://"+sText, "_blank");
else
oWindow.open(sText, "_blank");
script>
这个文件应该不需要改,放在注册表里指定的路径下就行了。oWindow取得调用脚本的当前窗口的window对象,sText取得选中文字。indexOf判断是否存在协议提示符,如果不存在就添加默认的http://再打开,否则直接打开。
阅读(1793) | 评论(1) | 转发(0) |