我正在托管一个iFrame,似乎当链接指向外部域时,它会将其加载到主窗口而不是iFrame中。 有没有办法强制在同一个iFrame中打开链接?
注意:我可以将任何我想要的内容添加到iFrame中加载的页面中(使用Chrome扩展程序)。
我尝试添加:
<base target="_parent" />
但它没有任何好处......
答案 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>