在嵌入在对象标记中的html页面中调用javascript函数

时间:2015-05-04 14:50:05

标签: javascript html object-tag

我有一个页面,其中包含嵌入在对象标记内的另一个页面。 现在我想从" parent" -page调用一个javascript函数。具体来说:父页面想要调用一个驻留在嵌入代码中的函数。 以前我使用过iframe,但是他们在Firefox上引起了一些讨厌的错误,所以我不想再使用它了。

编辑: 所以,我的问题是:当使用对象标签时,实现这一目标的最佳方法是什么?

以下是举例说明我想做的事情:

我有一个HTML页面" parent.html"在这个页面里面,标签里面有一些Javascript。此parent.html还有一个标记,此标记的src是另一个HTML页面,我们称之为child.html。 child.html页面具有以下内容:

这里有一些伪代码:

在Child.html中

<script type="text/javascript" src="child.js"></script>
在Child.js中

function getSomething(){
    return something;
}
在Parent.html中

<object id="childObject" data="child.html" width="850" height="510">
</object>

<script>
    // Here I want to access the function from the child.js
    // I tried something like this, but it doesn't work:
    var something = document.getElementById('childObject').contentDocument.getSomething();
</script>

现在: 在parent.html里面的Javascript中,我需要从child.js调用一个函数。 我怎样才能做到这一点?

谢谢:)

1 个答案:

答案 0 :(得分:0)

使用contentWindow代替contentDocument对我有用:

<object id="childObject" data="child.html" width="850" height="510">
</object>

<script>
    var something = document.getElementById('childObject').contentWindow.getSomething();
</script>