①同一个窗口中,获取某个iframe的信息


<body>
  <iframe id="PAID" name="PA" src="ItemSetting.htm"></iframe>
<iframe id="DKID" name="DK" src="ItemSetting.htm"></iframe>
</body>

var A = top.frames["PA"];//等效于document.getElementById("PAID").contentWindow

A获得的是iframe(PA)的上下文:window。

通过A可以操作该iframe的DOM对象和JS对象,例

var main = A.document.getElementById("mainDiv");//通过原生JS获取
var list = $(A.document).find("select");//通过JQ获取
var params = A.ParamList;//获取A页面中的JS对象
var values = A.getNames();//执行A页面JS中的Function

在不跨域的情况下 ,如果想通过某个iframe中的window对象获取其所在iframe DOM的话,可以用以下方法解决

//(前提是iframe必须有id)
var id= window.name;
var targetIframe = top.document.getElementById(id);

或者

window.frameElement

这是因为window对象的name取自于iframe的id或name

②通过元素获取当前window对象(document)

var but = document.getElementById("xxbut");
var doc = but.ownerDocument;

③通过window.open方式的子窗口与父窗口进行交互


var newWin = window.open(someUrl);
var parentWin = window.opener; newWin是新打开的窗口的BOM对象
所以可以使用BOM的所有方法 常用的有
newWin.location.reload(true);//只有一个参数.true表示
newWin.focus();
newWin.close();等等 当然也可以获取到子窗口的JS对象和函数(参考①)
parentWin 是打开该子窗口的BOM对象(不一定是父窗口,因为当初打开子窗口的有可能是父窗口中的iframe) 使用parentWin.top 就可以得到父窗口的window对象了

top.location.href 顶层frame地址

self.location.href 当前frame地址

通过
top.location.href==self.location.href
可确认当前页面是否被其他页面所装载

获取父窗口焦点(只在IE下有效)

window.opener.focus();

页面间(窗口间)的取值赋值及获取iframe下的window对象的更多相关文章

  1. JS子父窗口互相操作取值赋值的方法介绍

    $("#父窗口元素ID",window.parent.document); 对应javascript版本为window.parent.document.getElementById ...

  2. Jquery 关于span标签的取值赋值用法

    span是最简单的容器,可以当作一个形式标签,其取值赋值方法有别于一般的页面元素. //赋值 $("#spanid").html(value) //取值 $("#span ...

  3. JQuery关于span标签的取值赋值

    span取值赋值方法有别于一般的页面元素.JQ://赋值$("#spanid").html("hello world") //取值$("#spanid ...

  4. Dynamics 365-表单元素取值/赋值

    取值/赋值 参考: 山人丶 提示: 查找类型赋值时需指定目标实体,记录名称及id值 时间和日期类型赋值时需赋值Date类型 //获取new_name的值(单行文本) Xrm.Page.getAttri ...

  5. Jquery操作下拉框(DropDownList)实现取值赋值

    Jquery操作下拉框(DropDownList)想必大家都有所接触吧,下面与大家分享下对DropDownList进行取值赋值的实现代码 1. 获取选中项: 获取选中项的Value值: $('sele ...

  6. Jquery操作下拉框(DropDownList)的取值赋值实现代码(王欢)

    Jquery操作下拉框(DropDownList)的取值赋值实现代码(王欢) 1. 获取选中项: 获取选中项的Value值: $('select#sel option:selected').val() ...

  7. winform 批量控件取值赋值

    以前写winform 最多写几个文本框,最近需要入录一个人员信息,那好几十个字段,一下子干蒙了,这要是一个个取值赋值都写到明天了,于是就自己写了个方法,也不是什么高大上的,就是很简单很普通很low的方 ...

  8. js表单快速取值/赋值 快速生成下拉框

    1.表单取值/赋值公共方法 //表单序列化:文本框的name字段和数据源一致<form id="myForm" onsubmit="return false;&qu ...

  9. JS子父窗口互相取值赋值详解介绍

    子窗口赋值到父窗口 代码如下 复制代码 <script>function openWin(str) {    window.open(siteurl+"popup/"+ ...

随机推荐

  1. 就这样获取文件的MD5和大小

    纠结真蛋疼 判断一件事值不值得去做的唯一标准是这件事是不是令我纠结.如果纠结了,就不去做了!但是,人总要活着,又能怎样.谁说男人就没有那么几天...... 从极速妙传说起 在现在各大厂商都推出免费云盘 ...

  2. asp.net JavaScriptSerializer实现序列化和反序列化

    通过JavaScriptSerializer来实现.它的名字空间为:System.Web.Script.Serialization 如果要使用它,还须添加 System.Web.Extensions库 ...

  3. 利用session做国际化引起的old区内存爆满及修复方法

    题记:昨天加班打车回家,看见前面有辆路虎在高速上开的巨慢,挡住了我坐的出租车的路,于是就跟司机吐槽了一句:“前面这车怎么这么面啊?”,司机沉默了大概3秒,说了一句富含哲理性的话:“没有面车,只有面人” ...

  4. 用stimulsoft Reports报表工具制作简单报表的过程

    这是在数据库sql server中People表的数据

  5. 重新想象 Windows 8 Store Apps (42) - 多线程之线程池: 延迟执行, 周期执行, 在线程池中找一个线程去执行指定的方法

    [源码下载] 重新想象 Windows 8 Store Apps (42) - 多线程之线程池: 延迟执行, 周期执行, 在线程池中找一个线程去执行指定的方法 作者:webabcd 介绍重新想象 Wi ...

  6. learning sql (second edition) script

    create database bank; use bank; /* begin table creation */ create table department (dept_id smallint ...

  7. WCF使用泛型方法的问题

    public IList getModelList(string type, string SQL, List<string> list){ try { IList Mlist = new ...

  8. WebGL/X3DOM 跑在 iOS

    iOS是最早支持WebGL的移动操作系统之一,我们一直在努力让X3DOM运行在那些设备上.然而,标准的Safari浏览器默认是没有开启的.这种情况从iOS8发生改变,iOS8现在完全支持WebGL - ...

  9. 小型app开发的思路

    前提: 1. 性能不是最重要: 2. 人手少: 3. 速度要快: 结论: 1. 混合式 2. 减少app的复杂程度 3. 追求性能 (博客,尽量让自己每天写一点,短一点都可以)

  10. [译] 你应该升级 MQTT3.1.1 的6个理由

    原文 6 facts why it’s worth upgrading to the brand new MQTT 3.1.1version 摘要:新版 MQTT 3.1.1 终于在 2014 年 1 ...