如何强制从iframe链接在父窗口中打开

我需要在同一父页面中打开链接,而不是在新页面中打开它。

注意:iframe和父页面是同一个域

西门Green2020/03/23 15:18:36

<a target="parent">将在新标签页/窗口中<a target="_parent">打开链接... 将在父窗口/当前窗口中打开链接,而无需打开新标签页/窗口。不要忘了得分!

西门2020/03/23 15:18:36

尝试 target="_top"

<a href="http://example.com" target="_top">
   This link will open in same but parent window of iframe.
</a>
西里Near2020/03/23 15:18:36

是的,我发现了

<base target="_parent" />

这对于打开所有在iframe中打开的iframe链接很有用。

$(window).load(function(){
    $("a").click(function(){
        top.window.location.href=$(this).attr("href");
        return true;
    })
})

我们可以将其用于整个页面或页面的特定部分。

感谢你的帮助。

2020/03/23 15:18:36

最通用,最跨浏览器的解决方案是避免使用“ base”标签,而使用“ a”标签的target属性:

<a target="_parent" href="http://www.stackoverflow.com">Stack Overflow</a>

<base>标签的通用性较差,浏览器对其在文档中放置位置的要求不一致,需要进行更多的跨浏览器测试。根据您的项目和情况,要实现<base>标签的理想跨浏览器放置可能很困难,甚至完全不可行

使用标记target="_parent"属性执行此操作<a>不仅对浏览器更友好,而且还使您可以区分要在iframe中打开的那些链接和要在父级中打开的那些链接。

2020/03/23 15:18:36

尝试target="_parent" 属性里面anchor tag

Pro宝儿2020/03/23 15:18:35

使用JavaScript:

window.parent.location.href= "http://www.google.com";
村村2020/03/23 15:18:35

有一个HTML元素base,它允许您执行以下操作:

为页面上的所有链接指定默认URL和默认目标:

<base target="_blank" />

通过指定,_blank请确保iframe内部的所有链接都将在外部打开。

番长2020/03/23 15:18:35

如前所述,您可以使用target属性,但是XHTML在技术上已弃用该属性。这样您就可以使用javascript了,通常是parent.window.location

泡芙2020/03/23 15:18:35

使用目标属性:

<a target="_parent" href="http://url.org">link</a>
小胖Gil2020/03/23 15:18:35

我发现最好的解决方案是使用基本标签。将以下内容添加到iframe页面的顶部:

<base target="_parent">

这将在父窗口中加载页面上的所有链接。如果要在新窗口中加载链接,请使用:

<base target="_blank">

所有浏览器完全支持此标签