Javascript 为什么在尝试从父页面调用iFrame中的函数时会出现TypeError?

Javascript 为什么在尝试从父页面调用iFrame中的函数时会出现TypeError?,javascript,firefox,google-chrome,iframe,Javascript,Firefox,Google Chrome,Iframe,我有一个嵌入了iFrame(子)的页面(父页面),iFrame包含一个我需要从父页面调用的javascript函数。该页面位于不同的域,但我不知道这是否是问题所在。这是我在父页面上的代码: <script type="text/javascript"> function SaveChanges() { var iFrame = document.getElementById("iframeSite"); iFrame.contentWindow

我有一个嵌入了iFrame(子)的页面(父页面),iFrame包含一个我需要从父页面调用的javascript函数。该页面位于不同的域,但我不知道这是否是问题所在。这是我在父页面上的代码:

<script type="text/javascript">
    function SaveChanges() {
        var iFrame = document.getElementById("iframeSite");
        iFrame.contentWindow.ExecuteSave();
    }
</script>

我几乎尝试了调用子iFrame函数的所有变体,但仍然收到相同的错误。

因为iFrame位于不同的域中,所以无法在它们之间直接调用。这将违反法律

有一种认可的方式让iframe和家长沟通。它叫


希望这有帮助

我一直在使用postMessage进行iframe儿童与家长之间的通信,那么是否可以将其用于家长与孩子之间的通信呢?
<script type="text/javascript">
    function ExecuteSave() {
        alert("test1");
    }
</script>
Uncaught TypeError: Property 'ExecuteSave' of object [object DOMWindow] 
is not a function