目前,要从我们的Intranet访问外部链接,我们必须复制该链接,并将链接粘贴到新窗口中。我们有什么方法可以在javascript中的单个函数中实现这一点吗?
由于
更新: 当用户从网络外部登录时,会更改网址。这就是我们需要编写的代码。我想我从服务器端和客户端应用了以下两次(此代码不可编辑):
s=s.replace(/location.assign\(([^;]*)\)/g,"location.assign(alter_url($1))")
s=s.replace(/location.replace\(([^;]*)\)/g,"location.replace(alter_url($1))")
if(s.match(/location\s*=\s*([^;]*)(;?)/)!=null&&s.match(/\.open\(.+,.+,.*location\s*=.+\)/)==null)
s=s.replace(/location\s*=\s*([^;]*)(;?)/g,"location=alter_url($1)$2")
s=s.replace(/location\.href\s*=\s*([^;]*)(;?)/g,"location.href=alter_url($1)$2")
s=s.replace(/window\.open\(([^,]*)(,.*)?\)/g,"window.open(alter_url($1)$2)")
s=s.replace(/\.src\s*=\s*([^;]*)(;?)/g,".src=alter_url($1)$2")
s=s.replace(/\.action\s*=\s*([^;]*)(;?)/g,".action=alter_url($1)$2")
s=s.replace(/\.innerHTML\s*=\s*([^;]*)(;?)/g,".innerHTML=alter_html($1)$2")
s=s.replace(/\.outerHTML\s*=\s*([^;]*)(;?)/g,".outerHTML=alter_html($1)$2")
实际上,我越是看这个,它变得越不现实......
答案 0 :(得分:0)
右键单击并选择“在新窗口中打开”不起作用?因为如果没有,我也没有看到Javascript解决方法。但是:
您可以在Javascript中轻松打开包含特定网址(例如链接)的新窗口:
window.open("http://stackoverflow.com");
在页面中选择了ways of getting the text,以便加入其中。所有这些都可以包含在bookmarklet中,以便操作变为“选择文本,单击书签工具栏上的链接”。
但如果“在新窗口中打开”不起作用,我也不希望这样做。
答案 1 :(得分:0)
您可以使用window.open打开新窗口上的链接。实际上,如果您无法访问应用程序源代码,可以使用bookmarklet将目标设置为站点上每个链接上的_blank。
顺便说一句,如果在打开链接时按住Shift键,它将在新窗口中打开。