Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2320988
  • 博文数量: 252
  • 博客积分: 5472
  • 博客等级: 大校
  • 技术积分: 3107
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-17 18:39
文章分类

全部博文(252)

文章存档

2012年(96)

2011年(156)

分类: WINDOWS

2012-03-27 16:25:54

添加一个注册表项,就会出来一条右键菜单项。点击之后调用一段保存在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) |
给主人留下些什么吧!~~

桔色花花朵2012-03-28 22:41:55

哎……直接用360了!