javascript iframe“top。”多个div?

时间:2011-10-27 23:24:08

标签: javascript css iframe

我原来问过question当时我正在抓稻草。我创建了以下小提琴,它与我在内部应用程序中实际看到的内容密切相关:

http://jsfiddle.net/uwtj9/10/

有一个普通的index.asp页面。在那个页面上,我可以打开一个包含iFrame的div(所以弹出窗口)。然后从那个iFrame我可以打开另一个包含另一个iFrame的div。但是,当第二个div打开时,我试图关闭第一个div。希望这是有道理的。

但是,当我尝试打开第二个div时,创建iframe的代码永远不会运行。我认为这与“顶级”有关。目前在我的内部应用程序代码中。当我尝试添加top.hidepopwin时,我在Firebug中收到错误: 拒绝访问属性'hidePopWin'

的权限

但是,在我的代码内部,我没有收到该错误消息,但我进入doPopWin代码。

不幸的是,无论出于何种原因我拿出顶部。在我的代码内部它并没有像我期望的那样工作(我不能在小提琴上复制它)。基本上第二个div被创建,但它仍然是相同的大小,而不是所有元素都被清除(即原始菜单仍然显示在新菜单下)。

任何人对此都有任何想法?小提琴似乎正如我所期望的那样起作用,但这是“顶级”。事情有点奇怪。

更新

SLaks回答为什么“顶级”。不适用于jsFiddle是可以接受的。我仍然对这个问题感到疑惑:

不幸的是,无论出于什么原因我拿出顶部。在我的代码内部它并没有像我期望的那样工作(我不能在小提琴上复制它)。基本上第二个div被创建,但它仍然是相同的大小,而不是所有元素都被清除(即原始菜单仍然显示在新菜单下)。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

top会返回托管您网页的最外层框架的window对象。

在jsFiddle中,这是根jsfiddle.com页面,它与您的用户代码位于不同的域中。 (jsFiddle中的用户提交在http://fiddle.jshell.net中运行)