取父窗口的元素方法:$(selector, window.parent.document)
那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document)
类似的,取其它窗口的方法大同小异
$(selector, window.top.document)
$(selector, window.opener.document)
$(selector, window.top.frames[0].document)
希望对你能有帮助
JS子窗口调用父窗口的方法:
框架(iframe)形式,这时用到是window.parent, window.parent能获取一个框架的父窗口或父框架。顶层窗口的parent引用的是它本身。可以用这一点特性来判断这个窗口是否是顶层窗口。详情如下:
1、1.html代表的是父窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8" />
<title>父页面</title>
</head>
<body>
<form name="form1" id="form1">
<input type="text" name="username" id="username" />
</form>
<iframe src="2.html" width="100%">
</body>
</html
2、2.html代表的子窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8" />
<title>子页面</title>
<script type="text/javascript">
function changeValue(val){
var _parentWin = window.parent
_parentWin.form1.username.value = val
}
</script>
</head>
<body>
<input type="file" name="filename" onchange="changeValue(this.value)" />
</body>
</html>
这时在子窗口(iframe窗口)所做的改变,会改变父窗口中username的值。
1、父页面代码如下:
<input type="text" id="name" value="zhangsan"/>
<a href="a.html" target="_blank">预览</a>
2、子页面,也就是a.html获取父页面中文本框的value
代码如下:
$(function(){
console.info(window.opener.document.getElementById("name").value)
})
这样控制台中出来的则是父页面文本框的值 .