JavaScript窗口函数收集

前些天项目碰到这个问题,在ie下可以直接调用iframe里的js函数 
如: 
document.getElementById('iframedemo').targetfunction(); 
但是这段代码在firefox下报错,于是上google搜索,发现一个解决办法,在ie和firefox 
下均工作正常,代码如下: 
document.getElementById('iframedemo').contentWindow.demofunction(); 
其中iframedemo是iframe的id 

http://ross-geller.javaeye.com/blog/437315

 

 

我在做一个网站的时候,遇到需要调用父窗体中 iframe 中页面里的一个javascript函数,我是这样写的

引用
parent.iframe_id.function_name();

  这个写法,在IE里是没有问题的,但是到了Firefox下就无效了。那么如何同时兼容Firefox和IE呢?在MSDN中查找,并且实验,最后终于找到方法了,如下
引用
parent.document.getElementsByTagName("iframe")["iframe_id"].contentWindow.function_name();

  如果要调用 iframe 中页面里的 iframe 中页面里的javascript函数(是不是很绕啊,呵呵),该如何操作呢?道理与上面的一样,只不过代码多一些而已,如下
引用
parent.document.getElementsByTagName("iframe")["iframe_id"].contentWindow.document.getElementsByTagName("iframe")["iframe_id"].contentWindow.function_name();

  以上后面的两条语句同时支持Firefox和IE,在Opera中是否有效,我还没有去验证,有兴趣的朋友可以去试一试,我估计应该可以运行的。

http://blog.jiqila.com/read.php?50

posted @ 2010-07-22 23:35  心梦帆影  阅读(312)  评论(0编辑  收藏  举报