iframe父子页面之间相互调用元素和函数

 1 <!doctype html>
 2 <html>
 3  <head>
 4   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 5   <meta name="Keywords" content="">
 6   <meta name="Description" content="">
 7   <title>Document</title>
 8   <style>
 9     *{padding:0;margin:0}
10     #box{width:450px;height:200px;border:2px solid red;margin:30px auto;}
11     #box iframe{width:100%;height:100%;}
12   </style>
13  </head>
14  <body>
15
16     <div id="box">
17         <iframe src="children.html" id="iframebox" frameborder="0" scrolling="yes"></iframe>
18     </div>
19     <div id="pmsg"></div>
20     <div id="pmsg1"></div>
21     <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
22     <script type="text/javascript">
23
24         /*
25             iframe中父子页面之间的数据传递
26         */
27         //javascript版本
28         window.onload = function(){
29             //父页面调用子页面的元素和事件
30             //var iframebox = document.getElementById("iframebox");
31
32             //var cwinDom = iframebox.contentWindow;//获取的是window,而不是domcument对象
33             //cwinDom.document.getElementById("regbox").innerHTML = "皮皮,已经登录了。。。";  //需要在服务器中访问,否则会抛跨域异常
34
35             //var json = {msg:"皮皮,已经邮寄一份礼物给你了,注意查收"};
36             //cwinDom.getMsg(json);
37         }
38
39         function msg(msg){
40             document.getElementById("pmsg1").innerHTML = msg;
41         }
42
43         //jQuery版本
44         window.onload = function(){
45             var $frame = $("#iframebox").contents();
46             $frame.find("#regbox").html("皮皮,已经登录了。。。");
47
48             var json = {msg:"皮皮,已经邮寄一份礼物给你了,注意查收"};
49             $("#iframebox")[0].contentWindow.getMsg(json);
50         }
51
52     </script>
53
54  </body>
55 </html>
 1 <!doctype html>
 2 <html lang="en">
 3  <head>
 4   <meta charset="UTF-8">
 5   <meta name="Generator" content="EditPlus®">
 6   <meta name="Author" content="">
 7   <meta name="Keywords" content="">
 8   <meta name="Description" content="">
 9   <title>Document</title>
10  </head>
11  <body style="overflow:auto;">
12     <div id="regbox">登陆、注册</div>
13
14     <div id="msg"></div>
15
16
17
18
19     <script type="text/javascript">
20
21         function getMsg(params){
22             alert(99);
23             document.getElementById("msg").innerHTML = params.msg+‘<br/>收到了,谢谢‘;
24
25             //调用父页面的元素和事件
26             parent.document.getElementById("pmsg").innerHTML = "礼物已收到了,谢谢";
27             parent.msg("调用了下父页面的事件");
28
29             //jQuery
30             $(parent.document).find("pmsg").html("礼物已收到了,谢谢");
31         }
32
33     </script>
34
35  </body>
36 </html>
时间: 2024-10-10 00:52:45

iframe父子页面之间相互调用元素和函数的相关文章

Wex5父子页面方法相互调用

父子页面分为两种,1.windowDialog 是弹出的子页面,2.windowContainer 是内嵌的子页面! 在子页面中获取父页面的model对象 this.getParent() 或者 this.getParentModel() 可以获取到父页面的model对象,然后就可以访问父页面任意的方法和属性.直接操作父页面 在父页面中,也可以通过this.comp('windowContainer 或者 windowDialog 的Xid').getInnerModel() 获取子页面的mod

iframe父子兄弟之间调用传值(contentWindow &amp;&amp; parent)

iframe的调用包括以下几个方面:(调用包含html dom,js全局变量,js方法) 主页面调用iframe: iframe页面调用主页面: 主页面的包含的iframe之间相互调用: 主要知识点 1:document.getElementById("ii").contentWindow 得到iframe对象后,就可以通过contentWindow得到iframe包含页面的window对象,然后就可以正常访问页面元素了: 2:$("#ii")[0].content

Iframe父页面与子页面之间的调用

专业词语解释如下:     Iframe:iframe元素是文档中的文档.     window对象: 浏览器会在其打开一个HTML文档时创建一个对应的window对象.但是,如果一个文档定义了一个或者多个框架(即:包含一个或者多个frame或者iframe标签),浏览器就会为原始文档创建一个window对象,再为每个iframe创建额外的window对象,这些额外的window对象是原始窗口的子窗口. contentWindow: 是指指定的iframe或者iframe所在的window对象.

【JavsScript】父子页面之间跨域通信的方法

由于同源策略的限制,JavaScript跨域的问题,一直是一个比较棘手的问题,为了解决页面之间的跨域通信,大家煞费苦心,研究了各种跨域方案.之前也有小网同学分享过一篇“跨域,不再纠结” 开始照着尝试时还是有些不够明白的地方,深入了解之后,这里给大家补充一点更具体的做法. 先来看看哪些情况下才存在跨域的问题: 其中编号6.7两种情况同属于主域名相同的情况,可以设置domain来解决问题,今天就不讨论这种情况了. 对于其他跨域通信的问题,我想又可以分成两类: 其一(第一种情况)是a.com下面的a.

【JavaScript】父子页面之间跨域通信的方法

由于同源策略的限制,JavaScript跨域的问题,一直是一个比较棘手的问题,为了解决页面之间的跨域通信,大家煞费苦心,研究了各种跨域方案.之前也有小网同学分享过一篇“跨域,不再纠结” 开始照着尝试时还是有些不够明白的地方,深入了解之后,这里给大家补充一点更具体的做法. 先来看看哪些情况下才存在跨域的问题: 其中编号6.7两种情况同属于主域名相同的情况,可以设置domain来解决问题,今天就不讨论这种情况了. 对于其他跨域通信的问题,我想又可以分成两类: 其一(第一种情况)是a.com下面的a.

[转]父子页面之间跨域通信的方法

父子页面之间跨域通信的方法 2014/08/08 · Web前端 由于同源策略的限制,JavaScript跨域的问题,一直是一个比较棘手的问题,为了解决页面之间的跨域通信,大家煞费苦心,研究了各种跨域方案.之前也有小网同学分享过一篇“跨域,不再纠结” 开始照着尝试时还是有些不够明白的地方,深入了解之后,这里给大家补充一点更具体的做法. 先来看看哪些情况下才存在跨域的问题: 编号 URL 说明 是否允许通信 1 http://www.a.com/a.js http://www.a.com/b.js

父子页面之间跨域通信的方法(转)

由于同源策略的限制,JavaScript跨域的问题,一直是一个比较棘手的问题,为了解决页面之间的跨域通信,大家煞费苦心,研究了各种跨域方案.之前也有小网同学分享过一篇“跨域,不再纠结” 开始照着尝试时还是有些不够明白的地方,深入了解之后,这里给大家补充一点更具体的做法. 先来看看哪些情况下才存在跨域的问题: 其中编号6.7两种情况同属于主域名相同的情况,可以设置domain来解决问题,今天就不讨论这种情况了. 对于其他跨域通信的问题,我想又可以分成两类: 其一(第一种情况)是a.com下面的a.

iframe父子页面操作-比较好用的两个方法-window.parent/oframe.contentWindow.document

发现比较好用的iframe父子页面操作方法,记录一下 1.父页面 test.html <iframe id="iframe1" src="iframe.html"></iframe> 获取iframe    var oframe = document.getElementById("main") 获取子页面  var child =  oframe.contentWindow.document 获取子页面元素      v

父子页面之间元素相互操作(iframe子页面)

js/jquery获取iframe子页面中元素的方法: 一.使用window.frames["iframe的ID"]获取元素 window.onload = function() { var oIframe = window.frames["oIframe"].document.getElementById("getFrame"); console.log(oIframe); } 注意:此处一定要加上window.onload或者DOMConte