【问题标题】:Open a local HTML file in Full screen in IE without showing a security prompt在 IE 中全屏打开本地 HTML 文件而不显示安全提示
【发布时间】:2014-01-31 01:43:15
【问题描述】:

我们开发了一个离线 HTML 应用程序 - 基本上是一组 HTML 页面,其中包含一些 JS 和 CSS 资源(HTML 页面中引用的外部文件)来支持它。

要运行这个应用程序,所有客户端(客户)需要做的就是在他的 IE 浏览器中打开“LandingPage.html”文件(客户端只会使用 IE)。

最近,客户要求将应用程序设计为以全屏模式自动打开。所以他们不想被要求按 F11。

我们使用许多不同的可用 JavaScript 解决方案来实现这一点 - 但它们都使用 ActiveX / 导致出现用户必须确认的安全提示。

我们不建议用户去更改与 Active X 对象/脚本/初始化等相关的 IE 安全设​​置 - 该建议没有得到很好的接受。

客户端希望应用程序全屏打开-

  1. 不显示任何提示/要求确认
  2. 它应该是自动的/它不应该要求用户按 F11 或任何其他按钮。
  3. 他们也不希望页面在另一个窗口中打开(我们也演示了window.open 解决方案......)。

对实现此功能有什么建议吗?我知道有太多限制...

【问题讨论】:

  • HTA 是一个选项吗?
  • 嗨 Dr.Molle - 我浏览了 HTA 的文档,我可以感受到这会给我们带来的优势 - 如果我们早点走这条路。谢谢 - 这真的很有用 - 下次值得深思......我尝试将 HTA 模型应用于我们现有的应用程序,并且开始出现很多 JS 错误。我们接近 UAT,因此不可能完全改造 - 我们需要在当前设置中找到解决方案。还有其他建议吗?

标签: javascript html internet-explorer fullscreen


【解决方案1】:

您可以为 IE 使用启动器(也可以是一些脚本或 HTA 文件)

示例-HTA:

<html>
<head>
 <hta:application 
 showintaskbar="no"
 singleinstance="yes"
 sysmenu="no"
 windowstate="minimize"
 >
 <script>
 IE = new ActiveXObject("InternetExplorer.Application") ;   
 IE.Visible = 1 ;
 IE.navigate( "file://C:/path/to/LandingPage.html" ) ;
 IE.TheaterMode=true;
 //close HTA
 self.close();
 </script>
</head>
<body></body>
</html>

如果您想将其用作脚本,请将 &lt;script/&gt; 的前 4 行复制到以 .js 结尾的文件中

【讨论】:

  • 我使用与上面相同的示例创建了一个 HTA 启动器,但仍会在 IE 中创建 ActiveX 提示符,如下图所示:tinypic.com/r/mtqy5t/8
  • 你给它的结尾是 .hta 吗?
  • 是的。除了路径之外,它与上面的代码示例相同。
  • 默认情况下,HTA 文件应使用 HTA 主机而不是 IE 打开,HTA 主机不应强制提示标题为“Internet Explorer”,因为它不是 IE(它根本不应该强制安全提示,当然 HTA 是不安全的)。您确定 .hta 文件已通过 HTA 主机打开吗
  • 嗨,当我双击我创建的启动器 HTA 时,它会在 HTA 主机中打开(因为我可以看到一个对话框窗口 - 灰显,有几分之一秒,然后关闭本身 -self.close()? ),然后 IE 打开提示符......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-19
  • 2017-06-05
  • 1970-01-01
  • 2019-09-06
  • 1970-01-01
相关资源
最近更新 更多