iframe子父页面调用js函数示例

iframe子页面调用父页面js函数及iframe父页面调用子页面js函数在实际项目中都是很实用的,下面有个不错的示例,感兴趣的朋友可以了解下。

 

1、iframe子页面调用父页面js函数 

子页面调用父页面函数只需要写上window.praent就可以了。比如调用a()函数,就写成: 

复制代码代码如下:

window.parent.a(); 


子页面取父页面中的标签中的值,比如该标签的id为“test”,则: 

复制代码代码如下:

window.parent.document.getElementById("test").value; 

jQuery方法为: 

$(window.parent.document).contents().find("test").val(); 


但是我在chrome浏览器下却发现此方法无效了!查了半天才了解,在chrome 5+中,window.parent无法在file://协议中运行,但是发布了之后http://协议下是可以运行的。此方法支持ie、firefox浏览器。 

2、iframe父页面调用子页面js函数 

复制代码代码如下:

这个就稍微复杂一些,下面的方法支持ie和firefox浏览器: 

document.getElementById('ifrtest').contentWindow.b(); 

子页面取父页面中的标签中的值,比如该标签的id为“test”,则: 

document.getElementById("test").value; 


注:ifrtest是iframe框架的id,b()为子页面js函数。contentWindow属性是指定的frame或者iframe所在的window对象,IE下可以省略。

 

PS:

假设一个name为a,一个name为b,a中有一个函数为test(),在b中访问a中的test()方法为:self.parent.a.test();

 

 

原文链接:http://www.jb51.net/article/42925.htm

posted @ 2015-12-07 18:02  半前端半设计的四不像  阅读(252)  评论(0)    收藏  举报