从另一个浏览器打开一个浏览器

时间:2015-03-24 14:34:47

标签: javascript

我在Firefox上运行我的Web应用程序。我在其中一个页面上有超链接,当我点击它时,它会打开另一个应用程序作为新的弹出窗口。 但Firefox不支持该应用程序。所以我想在Internet Explorer中打开它,即,虽然我在Firefox上运行应用程序,但是特定的弹出窗口应该在Internet Explorer中打开。我用它来打开新窗口:

var win = window.open(url, "NewWindow", strFeatures);

2 个答案:

答案 0 :(得分:2)

你不能只用普通的JavaScript做到这一点;正如Levi所说,如果可以的话,这将是一个可用性和安全性的噩梦。

也就是说,有几种方法可以让这样的东西起作用。例如,a Firefox add-on can launch external programs,因此您可以编写这样的附加组件以在IE中打开您的应用程序,并要求您的用户安装它(或让管理员为他们预先安装它,如果这是例如管理工作场所环境中的内部应用程序。)

另一种可能是使用自定义URL方案(如myapp:)链接到您的应用程序,以及register that URL scheme to be opened in IE(或者更确切地说,使用某种包含自定义URL的包装器脚本) ,将其转换为普通的HTTP URL,并在IE中打开它。但是,这仍然需要在最终用户的计算机上配置(并且可能安装脚本),因此它可能仅适用于办公室或类似环境。

请注意,这些解决方案都具有安全隐患,您应该牢记这一点。特别是,您使用的任何加载项或脚本都应适用于指向您应用的特定网址,并且应拒绝打开某人可能尝试提供的任何其他网址。

在任何情况下,如果您尝试为公共网站执行此操作,请记住, 谁不会开始使用 IE。甚至许多Windows用户可能不愿意使用IE(更不用说安装不受信任的扩展!)而没有非常的充分理由;毕竟,这可能是他们首先选择使用Firefox(或Chrome或Opera或其他)的原因。

答案 1 :(得分:0)

这是不可能的并且有充分理由。想想有人聪明 - 可以说 - 如果他们可以在你的计算机上运行各种程序因为你点击网站上的链接就可以做到......

您正在尝试这样做...通过点击浏览器中的链接运行其他原生应用程序。

为什么不将Internet Explorer用于所有内容,因为它适用于弹出窗口?