强制html页面在Chrome浏览器中打开的Javascript代码?

强制html页面在Chrome浏览器中打开的Javascript代码?,javascript,html,google-chrome,Javascript,Html,Google Chrome,我们公司正在使用谷歌应用程序,每个人的电脑上都安装了Chrome。问题是我们在某些事情上仍然需要使用IE。我在我们的内部网站上有一些链接到谷歌文档的html文件,但它是在IE浏览器中打开的。我需要它来打开Chrome浏览器,这样用户就不必在每次打开文件时都登录。我只能控制html文件设置,所以有没有办法使用Javascript强制在Chrome中打开窗口 谢谢 您是否在问是否可以在IE窗口中从Javascript打开Chrome窗口?如果是这样,那么不,这是不可能的。浏览器中的Javascrip

我们公司正在使用谷歌应用程序,每个人的电脑上都安装了Chrome。问题是我们在某些事情上仍然需要使用IE。我在我们的内部网站上有一些链接到谷歌文档的html文件,但它是在IE浏览器中打开的。我需要它来打开Chrome浏览器,这样用户就不必在每次打开文件时都登录。我只能控制html文件设置,所以有没有办法使用Javascript强制在Chrome中打开窗口


谢谢

您是否在问是否可以在IE窗口中从Javascript打开Chrome窗口?如果是这样,那么不,这是不可能的。浏览器中的Javascript代码在一个非常严格的沙箱中运行,不允许您进行任何系统调用。从IE打开Chrome窗口实际上需要在客户端机器上执行
Chrome.exe
。我相信您可以看到,如果授予此功能,将如何被滥用以在客户端系统上执行恶意的exe。

检查当前浏览器是否为chrome:

var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;

如果没有,请提醒用户显示一条消息。

我确信,使用JavaScript可以做的最好的事情就是向用户显示一条消息,并告诉他们用Chrome打开文件。JavaScript无权执行外部应用程序,如Chrome。有关使用JavaScript检测浏览器的信息,请参阅。

我相信如果您使用IE,您可以使用ActiveX打开特定程序

例如,尝试查看“新ActiveXObject”

但是,如果您想允许执行,您必须明确地允许这样做,正如IE确认的那样

function loadProg(path){
    var active = new ActiveXObject("WScript.Shell");
    activeX = active.Run(path);
}
如果您知道直接文件路径,请像这样使用

loadProg(path);
更具体地说像

window.onload = function(){
    loadProg("\"C:\\Program Files (x86)\\Guitar Pro 5\\GP5.exe\"");
};

我不知道Chrome的路径,所以我使用了其他方法。

他们可以使用ActiveX,就像我的答案所建议的那样。他们可以使用ActiveX,就像我的答案所建议的那样。随机ActiveX插件通常被安全设置阻止或严重限制。如果是我,我只会检测到这不是Chrome,并提示用户打开Chrome,而不是弄乱ActiveX。是的,如果您可以运行ActiveX插件,它可以直接打开Chrome。@jfriend00 IE支持这一点,甚至IE9也支持。它只是在执行之前提示用户。我不知道他们的用户受到什么样的安全限制,但我相信在对他们的用例进行基本测试时会注意到这一点,所以我建议这是一个答案,因为这正是他所要求的。IE有一个区域安全系统,它通常由它管理,以防止用户在某些情况下接受有害的ActiveX插件,从而自食其果。它可以配置为允许这种类型的插件工作,也可以不配置。我只是表示我不会走这条路。我没有投反对票,也没有说这不是一个答案,只是表达了我的观点,我可以这样做。