【发布时间】:2018-03-15 18:53:54
【问题描述】:
我想将 HTML 文件保存到磁盘,并使其可以在大多数浏览器中打开而不会出现警告(无网络服务器场景)。
对于 IE,我通常使用“web 标记”,大多数浏览器(尤其是 Firefox 和 Chrome)都安全地忽略了它。 IE 在找到这个 web 标记后也表现正常并且没有显示任何警告。您可以在MSDN 中查看更多关于网络标记的信息。
现在的问题。 Microsoft Edge 在看到这个“网络标记”后震惊并停止执行包含的 javascripts 文件。我勒个去 ?!如果我删除“网络标记”并在 Edge 中打开文件,它会正常打开(没有警告,并执行 javascripts)。
我可以让 IE 和 Edge 为同一个文件工作吗?
index.html
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html>
<head>
<script src="foo.js" ></script>
</head>
<body>
</body>
</html>
foo.js
alert('i am executed');
上面的内容根本不会在 Edge 中执行(如果从文件系统打开)!如何实现?
【问题讨论】:
-
这是一个 IE hack。 Edge 不是 IE
-
是的,我怀疑这实际上是一种黑客行为。但无论如何,任何想法如何实现它?我的意思是,FF 和 Chrome 只是忽略了这个标签。为什么边缘不能做同样的事情?
-
嗨,删除警报语句...(从头块调用它) Edge 和 IE(现在)谨慎处理警报语句以防止虚假支持诈骗...。我没有麻烦在边缘运行脚本化 MOW 页面,尽管所有脚本都是内联的,并且图像是数据 uri,以制作没有依赖关系的单个页面。
-
谢谢你抢。内联脚本在 Edge 中工作,但它们非常大,我想将它们分开,而不是在每个文件中重复。 'alert' 似乎不是问题,它只是一个示例 - 任何 javascript 代码都不是从(外部)javascript 文件执行的。
-
嗨 Nik,在空白页中打开边缘 (about:blank) 然后打开开发工具 (f12) 并选择调试选项卡,在调试选项卡上,从下拉(看起来像一个停止标志),然后(!重要)不关闭边缘开发工具,返回到边缘的空白页面和页面文件地址中的类型......它现在应该打破异常。跨度>
标签: javascript html internet-explorer microsoft-edge