0

我有一个名为“welcome.html”的 HTML 文档,它使用了一个引用“main.html”的 iframe。在“inner.html”文件中,另一个 iframe 用于引用“inner.html”。现在在“inner.html”内部,我想访问 / 的元素或在 main.html 的元素之间进行通信。我在javascript中使用了以下方法,

方法一:

..
..
var top_window = window.top;
alert(top_window)    // gives top window object
var main_window = top_window.frames['main-frame'] // assuming that 'main-frame' is the name given at the iframe declaration for 'main.html'
alert(main_window)    // gives main window object
var main_document = main_window.document
alert(main_document)    // gives 'undefined'
..
..

方法二:

..
..
var parent_window = window.parent;
alert(parent_window)    // gives parent window object, that is, 'main.html' window object
var parent_document = parent_window.document
alert(parent_document)    // gives 'null'
..
..

我想要'main.html'窗口对象的文档对象。我的两种方法都行不通。是否有任何合理的解决方案,或者我是否以错误的方式进行操作?

提前致谢。

4

1 回答 1

0

在 iframe 之间进行通信的最简单方法是获取窗口对象。在父子对象中创建一个 getter setter 函数,并在两个窗口对象之间传递值。

这将返回 iframe 的窗口对象

var contentWindow = document.getElementbyId('iframe').contentWindow 

从 iframe 使用访问父窗口window.parent

于 2013-03-26T08:30:45.693 回答