top,parent,opener,iframe
来源:互联网 发布:免费字体软件下载 编辑:程序博客网 时间:2024/05/18 01:21
1.opener:指用WINDOW.OPEN等方式创建的新窗口对应的原窗口。
2.top:
该变更永远指分割窗口最高层次的浏览器窗口。
3.parent:
该变量指的是包含当前分割窗口的父窗口。如果在一个窗口内有分割窗口,而在其中一个分割窗口中又包含着分割窗口,则第3层的分割窗口可以用parent变量引用第2层窗口,用top引用顶层窗口。
对于窗体中的frame和iframe加载的页面元素来说。parent 返回的时包含该iframe的页面窗口引用,top则返回最上层的窗口引用,self当然返回的仍然是自身的引用。
4. self,window都是获取当前页面窗口自身对象的引用
使用document.getElementById("IframeA")取到的是iframe标签对象,通过该对象可以获取iframe的各个属性,例如src、frameborder、style等,但是不能获取到iframe所包含的子页面的各个对象。;
使用document.frames("IframeA")取到的是iframe组件对象,通过该对象可以获取到iframe所包含的页面的子页面的各个对象,例如子页面的window对象,但是不能获得iframe标签得各个属性,例如上面说到的src等
1.html
<script>
function check(){
var obj1=document.getElementById("myframe");
alert(obj1.src);
//alert(obj1.window.document.myform.username.value);//Error
var obj2=document.frames("myframe");
alert(obj2.window.document.myform.username.value);
//alert(obj2.src);//Error
}
</script>
<body onload="check()">
<iframe id="myframe" name="myframe" src="2.html" frameborder="3" style="width:300;height:200;border-width:1;border-color:red;border-style:solid"></iframe>
</body>
2.html
<body>
<form name="myform">
用户名:<input type="text" name="username" value="test" />
</form>
</body>
附:Window对象、Parent对象、Frame对象、Document对象和Form对象的阶层关系:Windwo对象→Parent对象→Frame对象→Document对象→Form对象,
如下:parent.frame1.document.forms[0].elements[0].value;
问题:在一个页面嵌入框架<iframe>,然后在框架中使用jvascript脚本:parent.xx.value='xxxxx'; 在IE中可以正常看到赋值,但是在firefox中则不能完成赋值。请问在firefox中调用父框架的对象应该是哪个,是否和IE兼容?
解答:window.parent.document.form名.xx.value='xxxxx'; window可省略。
parent.document.form名.xx.value='xxxxx';
parent.document.getElementById("xx").value='xxxxx';
window.parent与window.opener的区别 javascript调用主窗口方法
1: window.parent 是iframe页面调用父页面对象
举例: a.html
<html>
<head><title>父页面</title></head>
<body>
<form name="form1" id="form1">
<input type="text" name="username" id="username"/>
</form>
<iframe src="b.html" width=100%></iframe>
</body>
</html>
如果我们需要在b.htm中要对a.htm中的username文本框赋值(就如很多上传功能,上传功能页在Ifrmae中,上传成功后把上传后的路径放入父页面的文本框中),我们应该在b.html中写:
<script type="text/javascript">
var _parentWin = window.parent ;
_parentWin.form1.username.value = "xxxx";
</script>
2: window.opener 是window.open 打开的子页面调用父页面对象
opener:对打开当前窗口的window对象的引用,如果当前窗口被用户打开,则它的值为null。
self:自引用属性,是对当前window对象的应用,与window属性同义。
self代表自身窗口,opener代表打开自身的那个窗口,比如窗口A打开窗口B。如果靠window.open方法,则对于窗口B,self代表B自己,而opener代表窗口A
2.top:
该变更永远指分割窗口最高层次的浏览器窗口。
3.parent:
该变量指的是包含当前分割窗口的父窗口。如果在一个窗口内有分割窗口,而在其中一个分割窗口中又包含着分割窗口,则第3层的分割窗口可以用parent变量引用第2层窗口,用top引用顶层窗口。
对于窗体中的frame和iframe加载的页面元素来说。parent 返回的时包含该iframe的页面窗口引用,top则返回最上层的窗口引用,self当然返回的仍然是自身的引用。
4. self,window都是获取当前页面窗口自身对象的引用
使用document.getElementById("IframeA")取到的是iframe标签对象,通过该对象可以获取iframe的各个属性,例如src、frameborder、style等,但是不能获取到iframe所包含的子页面的各个对象。;
使用document.frames("IframeA")取到的是iframe组件对象,通过该对象可以获取到iframe所包含的页面的子页面的各个对象,例如子页面的window对象,但是不能获得iframe标签得各个属性,例如上面说到的src等
1.html
<script>
function check(){
var obj1=document.getElementById("myframe");
alert(obj1.src);
//alert(obj1.window.document.myform.username.value);//Error
var obj2=document.frames("myframe");
alert(obj2.window.document.myform.username.value);
//alert(obj2.src);//Error
}
</script>
<body onload="check()">
<iframe id="myframe" name="myframe" src="2.html" frameborder="3" style="width:300;height:200;border-width:1;border-color:red;border-style:solid"></iframe>
</body>
2.html
<body>
<form name="myform">
用户名:<input type="text" name="username" value="test" />
</form>
</body>
附:Window对象、Parent对象、Frame对象、Document对象和Form对象的阶层关系:Windwo对象→Parent对象→Frame对象→Document对象→Form对象,
如下:parent.frame1.document.forms[0].elements[0].value;
问题:在一个页面嵌入框架<iframe>,然后在框架中使用jvascript脚本:parent.xx.value='xxxxx'; 在IE中可以正常看到赋值,但是在firefox中则不能完成赋值。请问在firefox中调用父框架的对象应该是哪个,是否和IE兼容?
解答:window.parent.document.form名.xx.value='xxxxx'; window可省略。
parent.document.form名.xx.value='xxxxx';
parent.document.getElementById("xx").value='xxxxx';
window.parent与window.opener的区别 javascript调用主窗口方法
1: window.parent 是iframe页面调用父页面对象
举例: a.html
<html>
<head><title>父页面</title></head>
<body>
<form name="form1" id="form1">
<input type="text" name="username" id="username"/>
</form>
<iframe src="b.html" width=100%></iframe>
</body>
</html>
如果我们需要在b.htm中要对a.htm中的username文本框赋值(就如很多上传功能,上传功能页在Ifrmae中,上传成功后把上传后的路径放入父页面的文本框中),我们应该在b.html中写:
<script type="text/javascript">
var _parentWin = window.parent ;
_parentWin.form1.username.value = "xxxx";
</script>
2: window.opener 是window.open 打开的子页面调用父页面对象
opener:对打开当前窗口的window对象的引用,如果当前窗口被用户打开,则它的值为null。
self:自引用属性,是对当前window对象的应用,与window属性同义。
self代表自身窗口,opener代表打开自身的那个窗口,比如窗口A打开窗口B。如果靠window.open方法,则对于窗口B,self代表B自己,而opener代表窗口A
- top,parent,opener,iframe
- javascript的top,parent,opener,iframe
- 关于Opener,parent,top,self等窗体属性的研究
- 关于Opener,parent,top,self等窗体属性的研究
- JS window对象的top、parent、opener含义
- (window,parent,opener,top).location.reload方法汇总
- JS window对象的top、parent、opener含义
- JS window对象的top、parent、opener含义介绍
- JS window对象的top、parent、opener含义
- JS window对象的top、parent、opener含义
- (window,parent,opener,top).location.reload方法汇总
- JS window对象的top、parent、opener说明
- JS window对象的top、parent、opener含义介绍
- opener 、self、parent
- window.opener ,window.parent
- parent.window.opener.location
- parent 、opener对比
- opener与parent
- 编译源码时出现 Checking API: checkapi-last (unknown): error 17解决方法
- mysql重装
- POJ 1584 判断凸包,点在多边形内外,点到直线最短距离
- 高效读写DB---目标
- 黑马程序员_单一职责原则
- top,parent,opener,iframe
- 怎么样减少模板特化的代码臃肿
- OceanBase Quick Start From Sourcecode
- 她和他的故事
- 编辑框(Edit)消息
- 链表翻转的递归和非递归算法
- 堆排序java语言描述
- 颜色对照表
- 黑马程序员_基础加强(5) 注解