如何强制iFrame打开所有链接留在iFrame中?

时间:2013-01-17 16:52:53

标签: iframe google-chrome-extension

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

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

我尝试添加:

<base target="_parent" />

但它没有任何好处......

1 个答案:

答案 0 :(得分:4)

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

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

您的代码

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

使用 <base target="myframe">代替myframe是您的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>

参考