标签:
今天我都在怀疑,很多项目还用不用iframe这个框架做页面布局。
如果你有兴趣想告诉我,请给我留言。
一. 说明
注:这里top和window.top等价,window是可以省略的,有得情况下不允许省略,如:
function func(){
var top=100;
var tWin=window.top;
}
window和self都表示当前窗口本身;
top是最顶层的window
parent是上级window
opener是打开当前窗口的window
二.举个栗子
以下是a.html的主要html:
<body>
<iframe id="frm" ... src="b.html"></iframe>
<script>
var t="A页面"; //这个是A页面中window对象的一个属性,和window.t=‘A页面‘等级
</script>
</body>
以下是b.html的主要html脚本:
<body>
<script>
function showWin(){
window.open("c.html");
}
var t="B页面";
</script>
<iframe id="frm" ....src="c.html"></iframe>
<input type="button" value="..." onclick="showWin()" />
</body>
以下是c.html的主要html脚本:
<body>
<script>
var t="C页面";
alert(window.t);
alert(self.t);
alert(top.t);
alert(parent.t);
alert(opener.t);
</script>
</body>
按照以上的设计,运行a.html页面,会弹出以下信息:
// C页面;
// C页面;
// A页面;
// B页面;
// 页面脚本报错,提示opener.t为空或不是对象;
点击b.html页面上的按钮,弹出c.html页面,页面弹出信息除了最后一个,其他的都和上面一样:
// C页面;
// C页面;
// A页面;
// B页面;
// B页面;--------- 只有这个不一样,以为是C页面是被B页面打开的
标签:
原文地址:http://www.cnblogs.com/wangdy/p/5239648.html