【问题标题】:Javascript code to force html page to open in Chrome browser?Javascript代码强制html页面在Chrome浏览器中打开?
【发布时间】:2012-03-15 15:46:36
【问题描述】:

我们公司正在使用 Google Apps,每个人的计算机上都安装了 Chrome。问题是我们仍然必须在某些事情上使用 IE。我的 Intranet 站点上有一些链接到 Google Docs 的 html 文件,但它在 IE 浏览器中打开。我需要它来打开 Chrome 浏览器,这样用户就不必在每次打开文件时都登录。我只能控制 html 文件设置,所以有没有办法使用 Javascript 来强制在 Chrome 中打开一个窗口?

谢谢!

【问题讨论】:

    标签: javascript html google-chrome


    【解决方案1】:

    我相信,如果你使用的是 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 插件经常被安全设置阻止或严重限制。如果是我,我会检测到这不是 Chrome,并提示用户打开 Chrome,不要弄乱 ActiveX。是的,如果您可以让您的 ActiveX 插件运行,它可以直接打开 Chrome。
    • @jfriend00 IE 支持这个,甚至 IE9。它只是在执行之前提示用户。我不知道对他们的用户施加了什么样的安全限制,但我相信在对他们的用例进行基本测试时会注意到这一点,所以我建议将此作为答案,因为它完全符合他的要求。
    • IE 拥有这个区域安全系统,该系统通常由 IT 管理,以防止用户在某些情况下接受有害的 ActiveX 插件而自取其辱。它可能会或可能不会被配置为允许这种类型的插件工作。我只是提出我不会走这条路的意见。我没有反对或说这不是一个答案,只是表达了我可以这样做的意见。
    【解决方案2】:

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

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

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

      • 他们可以改用 ActiveX,就像我的回答建议的那样。
      【解决方案4】:

      我很确定使用 JavaScript 能做的最好的事情就是向用户显示一条消息,并告诉他们改为在 Chrome 中打开文件。 JavaScript 无权执行 Chrome 等外部应用程序。有关使用 JavaScript 检测浏览器的信息,请参阅 http://www.w3schools.com/js/js_browser.asp

      【讨论】:

      • 他们可以改用 ActiveX,就像我的回答建议的那样。
      猜你喜欢
      • 2013-12-26
      • 2023-03-26
      • 1970-01-01
      • 2012-04-21
      • 2014-07-30
      • 2015-07-01
      • 2014-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多