参考其他页面上的对象

时间:2012-06-14 09:49:00

标签: javascript iframe

我编写了一个删除iFrame的函数,但是我要删除的iFrame是在另一个php脚本中调用的。我想知道我怎么能参考这个脚本。这是iFrame在同一个脚本中的代码:

function removeFrame(framename,action){
    iFrameObject = document.getElementById(framename);
    iFrameObject.style.display = action;
}

所以我想要'otherpage.php.document.getElementbyId(framename)',但我真的不知道该怎么做..

1 个答案:

答案 0 :(得分:0)

在我回答你的问题之前,我强烈建议避免这样的情况 - 帧之间的通信 - 如果可能的话,因为它会很快变得混乱。

但是,您可以通过对代码进行少量修改来完成您所要求的内容。修改后的函数将从iframe或父窗口本身调用。但请记住,窗口间通信受same origin policy

的约束
function removeFrame(framename,action){
    iFrameObject = window.parent.document.getElementById(framename);
    iFrameObject.style.display = action;
}

此更改涉及指向当前window的父级,在iframe的情况下是嵌入它的页面。当前window没有真正的父窗口时,window.parent引用当前窗口(这解释了为什么此功能在父页面或iframe内工作)。