如何从这个iframe调用iframe函数

时间:2010-05-06 11:51:30

标签: javascript function iframe call opera

我在Javascript中创建了一个iframe,其函数为f():

var iframe = document.createElement("iframe");
$(iframe).attr({
  width: 0,
  height: 0,
  frameborder: 0,
  src: this.options.url,
  name: id,
  id: id
});

document.body.appendChild(iframe);

iframe.contentWindow.f = function(data) {
 alert("test");
};

在此iframe中加载的文档应调用函数f():

<script ...>f();</script>

这在Firefox中完美运行但是Opera说,f()未定义。

有没有解决方案?

阿德里安。

1 个答案:

答案 0 :(得分:1)

这是一个很好的变化,有一个竞争条件,所以在设置函数之前,iframe中的文档已经完成加载。将iframe文档调用父文档中的函数可能会更好。