寻找有关为什么在打开包含JavaScript的HTML文件时显示IE“黄色条”的文档

Looking for doc on why IE "yellow bar" shows when opening a HTML file that contains JavaScript

本文关键字:IE 显示 黄色 文档 黄色条 文件 HTML 为什么 JavaScript 包含 寻找      更新时间:2023-09-26

我有一个网站,您可以从中下载HTML文件。此HTML文件包含一个带有隐藏字段的表单,该表单立即使用JavaScript回发到站点。这是一种允许用户将他们在网站上编辑的数据下载到他们自己的机器上的方法。

在某些计算机上,尝试打开保存的文件时会显示 IE"黄色条"。IE中的"黄色条"警告HTML正在尝试运行Active X(事实并非如此,只有JavaScript在表单上执行submit()。但是,如果您通过电子邮件收到完全相同的HTML文件,请保存并打开它,则没有此问题。(看起来IE对从网站保存的HTML文件中可以执行的操作施加了更多限制。

我的问题是:我在哪里可以找到有关此IE安全机制的文档,以及如何绕过它?

亚历克斯

黄色条是因为您的页面正在 IE 中的本地计算机安全区域中执行。在不同的计算机上,本地计算机安全区域可能以不同的方式配置,因此您可以在某些计算机上看到黄色条,而在其他计算机上看不到黄色条。

若要了解有关 IE 的 URL 安全区域的详细信息,可以在此处开始阅读:http://msdn.microsoft.com/en-us/library/ms537183.aspx

查看此处以获取有关 MOTW 的详细信息 - 网络标记

如果将其添加到本地提供的页面,IE 将不会显示黄色条。

http://msdn.microsoft.com/en-us/library/ms537628(VS.85).aspx

我不关心任何特定的文档,但是如果您在Windows资源管理器的常规选项卡上打开文件的属性,该文件是否被阻止? 如果是这样,请单击取消阻止并重试,看看您是否解决了相同的问题。这是通过互联网下载的文件的典型安全性。

除此之外,恐怕我不知道还能有什么建议。

我不是 100% 遵循您的 JavaScript 提交的内容,但如果您从下载的副本提交回原始站点,您将在使用 JavaScript 时遇到问题,因为所有浏览器都将跨域 JavaScript 视为安全违规。

JavaScript 不允许读取或写入不在当前域中的任何站点

正如 Franci 所说,您处于本地计算机安全上下文中,这允许脚本创建对象并执行可能对您的 PC 造成损害的代码。 例如,您可以创建一个文件系统对象并执行不受信任的页面通常不应执行的任务,因为它本质上可能是恶意的。

您是否尝试过将文件名从您的姓名.html更改为您的姓名.hta以查看安全问题是否消失?

有关 HTML 应用程序的更多信息 (.HTA 文件):http://msdn.microsoft.com/en-us/library/ms536496%28VS.85%29.aspx