30

我有这个 iframe 代码:

<iframe src="http://www.example.com" border="0" framespacing="0" marginheight="0" marginwidth="0" vspace="0" hspace="0" scrolling="yes" width="100%" frameborder="0" height="100%"></iframe>

我想要做的是..当我点击 iframe 页面中的任何链接..然后我会去它并且页面将加载并且我将从当前页面退出到 iframe 链接作为一个新页面。

类似的东西target="_self"- 不像普通的 iframe,它会在浏览器本身没有任何变化的情况下转到这个链接。

示例:iframe 源代码:http: //www.w3schools.com

当我在 iframe 页面中单击“学习 HTML”时,我将转到http://www.w3schools.com/html/default.asp ,我的浏览器 URL 也会更改为它。

所以我只是点击了 iframe 中的一个链接,然后我就去了。

有任何想法吗?

4

5 回答 5

41

是的,您可以使用target="_parent"来实现这一点。

"target="_parent" 在父框架中打开链接文档。"

例子:

<a target="_parent" href="http://example.org">Click me!</a>

编辑:

如果这不起作用,您可以尝试_top

<a target="_top" href="http://example.org">Click me!</a>

或者base target

<base target="_parent" />

或者window.top.location在 JavaScript 中:

window.top.location = "http://example.com";
于 2013-03-29T23:14:13.327 回答
15

你正在寻找的是<a href="..." target="_parent">

_parent将导致它转到父框架

_top将导致它进入最顶层。

要么 要么_parent应该_top为您的目标工作。

于 2013-03-29T23:14:21.317 回答
7

You can use javascript to add the target to the links dynamically, something like this.

function onLoadIF(frame)
{
    var elements = frame.getElementsByTagName('a'),
        len = elements.length;

    while( len-- ) {
        elements[len].target = "_parent";
    }
}

And then add onload="onLoadIF(this)" to the iframe.

于 2013-03-29T23:57:15.817 回答
5

是的,只需添加target="_parent"链接,它就会加载到主页上。

于 2013-03-29T23:14:34.787 回答
2

如果站点在 iframe 中打开,则重定向到主站点

<script>
    if (window.top.location != window.self.location) {
        top.window.location.href = window.self.location;
    }
</script>
于 2017-01-14T08:26:00.893 回答