Javascript 让“网络标记”在Microsoft Edge中工作吗?
我想将一个HTML文件保存到磁盘,并使它能够在大多数浏览器中打开,而不会出现警告—无web服务器场景 对于IE来说,我通常使用网络标记,而大多数浏览器,尤其是Firefox和Chrome浏览器,都会安全地忽略它。IE在发现这个网页标记后也表现正常,没有显示任何警告。你可以查看更多关于网络标记的信息 现在问题来了。微软在看到这一网络标记后震惊并停止执行包含的javascripts文件。我勒个去?!如果我删除web标记并在Edge中打开文件,它将正常打开而没有警告,并执行javascripts 我可以使IE和Edge都适用于同一个文件吗 index.htmlJavascript 让“网络标记”在Microsoft Edge中工作吗?,javascript,html,internet-explorer,microsoft-edge,Javascript,Html,Internet Explorer,Microsoft Edge,我想将一个HTML文件保存到磁盘,并使它能够在大多数浏览器中打开,而不会出现警告—无web服务器场景 对于IE来说,我通常使用网络标记,而大多数浏览器,尤其是Firefox和Chrome浏览器,都会安全地忽略它。IE在发现这个网页标记后也表现正常,没有显示任何警告。你可以查看更多关于网络标记的信息 现在问题来了。微软在看到这一网络标记后震惊并停止执行包含的javascripts文件。我勒个去?!如果我删除web标记并在Edge中打开文件,它将正常打开而没有警告,并执行javascripts 我可
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html>
<head>
<script src="foo.js" ></script>
</head>
<body>
</body>
</html>
如果从文件系统中打开,上述内容在Edge中根本不会执行!如何做到这一点?您还需要在foo.js上标记web。有很多方法可以将web标记应用于非HTML文件-您可以将其完整性级别设置为低:
icacls foo.js /setintegritylevel low
或者,您可以添加具有区域标识符的备用数据流:
powershell -c add-content foo.js -stream Zone.Identifier -value "[ZoneTransfer]","ZoneId=3"
或者最简单的方法是将index.html重命名为index.htm,然后将foo.js放在名为index_files的目录中。该目录中的任何内容都被允许加载,即使它没有自己的网络标记。这是一次IE黑客攻击。Edge不是IEYea,我怀疑它实际上是一种黑客行为。但不管怎样,有什么办法可以实现吗?我的意思是,FF和Chrome忽略这个标签。为什么edge不能执行相同的操作?嗨,请删除警报语句。。。它被称为从头部块边缘和IE现在对待警告声明谨慎,以防止虚假的支持骗局。。。。我在edge中运行脚本化的MOW页面没有问题,尽管所有脚本都是内联的,图像都是数据uri,可以创建一个没有依赖关系的页面。谢谢rob。内联脚本在Edge中工作,但它们相当大,我希望它们分开,而不是在每个文件中重复“警报”似乎不是问题,它只是一个示例-任何javascript代码都不会从外部javascript文件执行。嗨,Nik,在空白页面中打开edge关于:空白然后打开开发工具f12并选择调试选项卡,在调试选项卡上,从下拉列表中选择所有异常的中断看起来像停止标志,然后!重要的是不关闭边缘DeV工具,返回到空白页,并在页面的文件地址中键入…它现在应该会在异常时中断。哇。惊人:谢谢。
powershell -c add-content foo.js -stream Zone.Identifier -value "[ZoneTransfer]","ZoneId=3"