我有一个网站,它在 iFrame 中显示远程文档。该文档包含其资源(如图像)的相对路径,因此 JavaScript 将绝对 url 作为基本标记注入远程文档的头部。这完美地工作,看起来像这样:
<html>
<head><title>My application</title></head>
<body>
<h1>Take a look at this document:</h1>
<iframe src="http://www.remote.com/a/b/c/">
<html>
<head>
<base href="http://www.remote.com/a/b/c/"</base>
</head>
...
</html>
</iframe>
</body>
</html>
这可以按预期完美运行。现在可能会发生我的应用程序本身被加载到这样的 iframe 中:
<html>
<head>...</head>
<body>
<h2>Take a look at that application:</h2>
<iframe src="http://myapplication.com"></iframe>
</body>
</html>
其中 URL http://myapplication.com将上述代码完全加载到 iframe 中。
这也适用于大多数经过测试的浏览器(Chrome、Firefox、...),但在 IE11 中不起作用。来自内部站点的图像资源现在从 myapplication.com(它们不存在)而不是 remote.com/a/b/c 加载。因此,在这种情况下,内部文档的基本标签将被忽略。
有人有解决这个问题的方法吗?