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

时间:2020-03-06 14:48:54  来源:igfitidea点击:

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

在某些计算机上,尝试打开保存的文件时会显示IE"黄色栏"。 IE中的"黄色栏"警告HTML试图运行Active X(实际上,不是,只有JavaScript在表单上执行Submit())。但是,如果通过电子邮件收到完全相同的HTML文件,将其保存并打开,则不会出现此问题。 (看来IE对我们从网站保存的HTML文件中可以执行的操作施加了更多限制。)

我的问题是:在哪里可以找到有关此IE安全机制的文档,可能如何解决?

亚历克斯

解决方案

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

不允许JavaScript读取或者写入当前域以外的任何站点

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

要了解有关IE的URL安全区域的更多信息,可以在这里开始阅读:http://msdn.microsoft.com/zh-cn/library/ms537183.aspx

我不关心任何特定的documnet,但是如果我们在Windows资源管理器中的"常规"选项卡上打开文件的属性,文件是否被阻止?如果是这样,请单击取消阻止,然后重试,看看是否遇到相同的问题。这是从Internet下载的文件的典型安全性。

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

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

我们是否尝试过将文件名从yourname.html更改为yourname.hta,以查看安全问题是否消失了?

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

在此处查看有关MOTW Web标记的详细信息

如果将其添加到本地服务页面,则IE不会显示黄色条。

http://msdn.microsoft.com/zh-CN/library/ms537628(VS.85).aspx