当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 子父窗口之间的操作之小例子

Javascript
总结一些js自定义的函数
与ClientWidth有关的一点资料
对联广告 flash版
连接文字不停变色
一条一条新闻向上的滚动 不错
Ctrl + Enter提交前检测的代码
对联广告 可关闭
一些很实用且必用的小脚本代码
巧妙破除网页右键禁用的十大绝招
实用javaScript技术-屏蔽类
静态的动态续篇之来点XML
显示行号的文本输入框
仿DVBBS下拉菜单效果 修正无错
移到这里,就会自动点击
让iframe框架网页在任何浏览器下自动伸缩
[原创]用srcElement实现添加效果
Javascript客户端脚本的设计和应用
解决 FireFox 下[使用event很麻烦] 的问题.
打字效果
简单的防盗链功能代码(iframe)

Javascript 中的 子父窗口之间的操作之小例子


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 136 ::
收藏到网摘: n/a

       用window.openr打开的子父窗口之间的操作跟框架的是不一样的,子窗口和父窗口之间有opener来联系。而源窗口要访问子窗口要通过其句柄来操作。以下小例子希望能帮助新手更了解他们的操作。

test.htm  

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>子父窗口的操作</title>
</head>
<body>
<script>
var win=null;
function op(){
win=window.open("about:blank","win","width=200,height=200");
win.document.write("<input type='button' value='关闭父窗口' onclick='window.opener.opener=null;window.opener.close()'>");
win.document.write("<input type='button' value='刷新你窗口' onclick='window.opener.location.reload()'>");
}
</script>
<input onclick="op()" value="打开窗口" type="button"><input type="button" value="最小化" onclick="if(win&&win.open&&!win.closed){win.resizeTo(0,0);win.moveTo(0,window.screen.width);}else alert('还没有打开窗口或已经关闭')"><input type="button" value="最大化" onclick="if(win&&win.open&&!win.closed){win.moveTo(-4,-4);win.resizeTo(screen.availWidth+8,screen.availHeight+8);}else alert('还没有打开窗口或已经关闭');"><input type=button value="关闭子窗口" onclick="if(win&&win.open&&!win.closed){win.opener=null;win.close()}else alert('还没有打开窗口或已关闭')"><input type=button value="刷新子窗口" onclick="if(win&&win.open&&!win.closed){win.location.reload();win.focus()}else alert('窗口还没有打开或已关闭')"><input type="button" value="看子窗口的大小" onclick="if(win&&win.open&&!win.closed){alert(win.document.body.clientWidth+'*'+win.document.body.clientHeight);win.focus();}else{alert('还没有打开窗口或者已关闭')};">
</body>
</html>

运行效果如下:

 

以上只供参考,有错请纠正,谢谢!