Window 对象

  浏览器会在其打开一个 HTML 文档时创建一个对应的 window 对象。但是,如果一个文档定义了一个或多个框架(即,包含一个或多个 frame 或 iframe 标签),浏览器就会为原始文档创建一个 window 对象,再为每个框架创建额外的 window 对象。这些额外的对象是原始窗口的 子窗口,可能被原始窗口中发生的事件所影响。例如,关闭原始窗口将导致关闭全部子窗口。如果想要创建新窗口(以及对应的 window 对象),可以使用像 open, showModalDialog 和 showModelessDialog 这样的方法。

contentWindow 属性

  contentWindow属性是指指定的frame或者iframe所在的window对象

  var ifr = document.getElementById("iframe");  
  var contentWindow = ifr.contentWindow.document.getElementById("XXXXX");  
  contentWindow.method();  在iframe页面操作父页面DoM元素(即嵌套这个iframe的页面)可以用:  
  window.parent.    
  window.top.  (这里的TOP是获取的顶层,即有多层嵌套iframe的时候使用)
===========================================================
 /**
* 人员选择
* @param fieldName 字段名称(同时也是回显控件的ID)
* @param type 控件类型(1:单选, 2: 多选)
* */
function userSelect(fieldName, type, callback) {
layer.open({
type: //此处以iframe举例
, title: "选择用户"
, area: ['800px', ($(window).height())+'px']
, shade:
, offset:'rb',
scrollbar: false,
shade:0.5,
shift: ,
fixed:false,
resize:false,
scrollbar:true,
move:false
, maxmin: false
, content: 'appDataController.do?userSelect&type='+type //(url)
, zIndex: layer.zIndex //重点1
, success: function (layero) {
layer.setTop(layero); //重点2
}
, btn: ['确定']
, yes: function(index){ //  获得iframe的窗口对象
var child = 'layui-layer-iframe'+index;
$child = $("#"+child)[].contentWindow; //  调用iframe的方法
var data = $child.getUser();
callback(fieldName, data);
layer.close(index);
}
});
}

另外一种layer,父子页面交互

var child = 'layui-layer-iframe'+index;
$child = $("#"+child)[0].contentWindow;
var data = $child.submit();

还有一个  

var iframeWin = window[layero.find('iframe')[0]['name']];
iframeWin.resetSelect();

iframe多窗口的更多相关文章

  1. 父窗口调用iframe子窗口方法

    一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...

  2. iframe 父子窗口相互之间调用语法

    一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...

  3. JS方法在iframe父子窗口间的调用

    本文向大家简单介绍一下iframe父子窗口间JS方法调用,JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用,希望本文介绍对你有所帮助. if ...

  4. iframe父窗口和子窗口的调用方法

    iframe 父窗口和子窗口的调用方法父窗口调用子窗口 iframe_name.iframe_document_object.object_attribute = attribute_value 例子 ...

  5. HTML中IFrame父窗口与子窗口相互操作

    一.Iframe篇 //&&&&&&&&&&&&&&&&&&am ...

  6. iframe父子窗口取值

    父窗口中操作iframe:window.frames["iframeChild"].document //假如iframe的id为iframeChild 在子窗口中操作父窗口:wi ...

  7. iframe父窗口和子窗口之间的调用

    1>父窗口获取子窗口 js方法 document.getElementById('if1').contentWindow.document: window.frames["if1&qu ...

  8. 父窗口和iframe子窗口之间相互传递参数和调用函数或方法

    1.父窗口向子窗口传递参数: 可以在url中添加参数:2.html?a=1&b=2&c=3 然后在子页面上可用js解析,提供一个函数: function getQueryStr(sAr ...

  9. iframe与父窗口之间数据互相获取

    Js/Jquery获取iframe中的元素 博客分类: jquery javascript jquery  在web开发中,经常会用到iframe,难免会碰到需要在父窗口中使用iframe中的元素.或 ...

随机推荐

  1. SAS 数值转日期

    DATA _NULL_;FORMAT A YYMMDDN8.;B=PUT(20180101,$8.);A=INPUT(B,YYMMDD8.);PUT B= A=;RUN; 输出:47   DATA _ ...

  2. 18 LVM逻辑卷管理

    根据上一节的内容,我们知道md这个内核模块可以用来做软RAID的管理.同时RAID实现了两个功能:1.提高了磁盘的读写能力:2.对于数据进行了冗余备份: 但是,如果是管理员手动误删的数据,则一样无法找 ...

  3. 学习js第三天小结

    1.冒泡排序分析: 例:将数组[9,8,7,6,5,4,3,2,1,0]按照从小打大的顺序进行冒泡排序. 演变过程: 第一趟: 8,7,6,5,4,3,2,1,0,9    比较了9次: 第二趟: 7 ...

  4. virsh详解

    来个表情包表达我此时的心情 man virsh virsh [options]... [<command_string>] virsh [options]... <command&g ...

  5. redis管道技术

    1.redis管道pipeline解决的问题: 由于redis通信是通过tcp协议基础,并且是堵塞的处理方式,在第一个请求没有执行并返回前,无法处理第二个请求.所以事件浪费在了网络传输和堵塞请求中. ...

  6. mysql where in形式存储过程如何传递带有单引号的入参

    对于存储过程或者函数,我们通常都有这样的一个需求,传递一个参数,输出一个结果.如:我传递一个账号,返回这个账号所拥有的权限.但是如果这个需求改了,我要传递多个账号,获取这些账号权限,但是账号的个数不限 ...

  7. 由echarts想到的js中的时间类型

    在工作中使用echarts时,偶然发现折线图中对时间类型变量的用法: now前面的+号何解? now = new Date(+now + oneDay); 后来查阅资料,看到一篇博客,解释如下:这是对 ...

  8. Windows Defender 无法启动

    最近win10 企业版操作系统中,Windows Defender  无法 启动,并提示消息 : to allow this app run , contact your security admin ...

  9. websocket如何设置?

    根据之前写的步骤到当前的websocket设置 一.websocket设置: 1)在线程租下右键单击选择Sampler如图: 2)进行它的设置 2.保存 3.添加查看结果数和聚合报告(此处不详细说明, ...

  10. MySQL Developer

    1.The mysql Client Program 2.Data Types 3.Joins 4.Subqueries 5.Views 6.StoredRoutine . 1.Client/Serv ...