Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带iframe的Javascript?_Javascript_Iframe - Fatal编程技术网

带iframe的Javascript?

带iframe的Javascript?,javascript,iframe,Javascript,Iframe,我现在在一个页面中有两个iframe,第一个iframe是URL,位于主机外部,例如www.google.com,第二个位于local means contact.html,现在两个都有相同的JavaScript函数,例如hello function()现在首先调用哪个 除非你给他们打电话,否则不会给他们打电话。所以这取决于你什么时候给他们打电话 如果调用在页面中是内联的,那么可能会首先调用外部页面中的调用,因为它有一个领先的起点 因为它们存在于不同的文档中,所以两者都不会覆盖另一个文档。由于文

我现在在一个页面中有两个iframe,第一个iframe是URL,位于主机外部,例如www.google.com,第二个位于local means contact.html,现在两个都有相同的JavaScript函数,例如
hello function()
现在首先调用哪个

除非你给他们打电话,否则不会给他们打电话。所以这取决于你什么时候给他们打电话

如果调用在页面中是内联的,那么可能会首先调用外部页面中的调用,因为它有一个领先的起点

因为它们存在于不同的文档中,所以两者都不会覆盖另一个文档。由于文档位于不同的主机上,与其他文档不同。

1)只有来自同一域的代码才会由来自同一域的其他页面执行
2) 在另一个域中具有相同名称的任何函数都必须由该域中的脚本执行


它肯定不是执行的同一个函数,如果该函数被阻塞(如警报),那么首先加载哪个页面将是一个问题,我相信两者都不是。如果要调用iframe中的函数,必须实际引用iframe:

document.getElementById('iframeid').contentWindow.myFunc();
请记住,除非iframe与父对象的来源相同,否则您将无法访问iframe中的任何内容。

视情况而定

比如说

<script type='text/javascript'>
  hello();
</script>
<iframe src='www.google.com'></iframe>

你好;
页面的hello函数肯定是先调用的

<iframe src='www.google.com'></iframe>
  .... more stuff
<script type='text/javascript'>
  hello();
</script>

.... 更多的东西
你好;

在这种情况下,您无法预测,因为iframe内容是异步加载的,在页面的hello调用之前可能会触发,也可能不会触发。但是,如果您计划通过iframe访问这些函数返回的值,则可能会遇到浏览器安全限制。无论如何,请发布一些代码。

我认为您必须进一步解释这个问题。通常情况下:加载速度更快的iframe的JavaScript将首先执行。请粘贴您的代码,否则我们无法捕获您。我还不清楚问题出在哪里。你能提供一些html代码来澄清吗?我自己找到了解决方案。这两个框架彼此独立,所以我们可以从其父框架调用函数。如果我添加了httphandler,那么哪个将首先调用?