我已经编写了一个删除 iFrame 的函数,但是我想要删除的 iFrame 在另一个 php 脚本中被调用。我想知道如何引用这个脚本。这是 iFrame 位于同一脚本中时的代码:
function removeFrame(framename,action){
iFrameObject = document.getElementById(framename);
iFrameObject.style.display = action;
}
所以我想要类似“otherpage.php.document.getElementbyId(framename)”的东西,但我真的不知道该怎么做..
最佳答案
在回答你的问题之前,我强烈建议避免这样的情况 - 框架之间的通信 - 如果可能的话,因为它很快就会变得困惑。
但是,您可以通过对代码进行少量修改来完成您所要求的任务。修改后的函数将从 iframe 或父窗口本身调用。但请记住,窗口间通信受 same origin policy 的约束。 .
function removeFrame(framename,action){
iFrameObject = window.parent.document.getElementById(framename);
iFrameObject.style.display = action;
}
此更改涉及指向当前窗口
的父级,在iframe
的情况下,该父级是嵌入它的页面。当当前窗口
没有真正的父窗口时,window.parent
引用当前窗口(这解释了为什么这个函数在父页面或iframe内工作)。
关于javascript - 引用其他页面上的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11030584/