4

我正在托管一个 iFrame,似乎当链接指向外部域时,它会将其加载到主窗口而不是 iFrame 中。有没有办法强制在同一个 iFrame 中打开链接?

注意:我可以将任何我想要的内容添加到 iFrame 中加载的页面(使用 Chrome 扩展程序)。

我尝试添加:

<base target="_parent" />

但这并没有起到任何作用...

4

1 回答 1

5

检查您的外部域页面的标题。如果X-Frame-OptionsHeader 设置为DENY,浏览器会忽略将内容加载到iframe框架集并加载到浏览器的主框架中。

Regardless of the site attempts the page cannot be displayed in a frame.

你的代码

<base target="_parent" /> 用于将结果加载到当前浏览器的父浏览上下文中。如果没有父级,则此选项的行为方式与 相同_self,因此无法解决您的问题

改用 <base target="myframe">where myframeis your iframe 的名称。

<iframe width="200" height="200" name="myframe"></iframe>

示范

查找用于加载页面的服务器标头

<html>

    <head>
        <base target="myframe">
    </head>

    <body>
        <a href="hi.html">Base</a>
        <a href="bye.html">A Tag</a>
        <iframe width="200" height="200" name="myframe"></iframe>
    </body>

</html>

参考

于 2013-01-18T18:18:02.490 回答