补充资料转自:http://www.cnblogs.com/superfeeling/archive/2011/09/14/2176435.html
补充资料
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;
index.html包含两个iframe,两个iframe的src分别是index1.html和index2.html
index.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
<iframe src="index1.html" width="100%" height="300" name='if1'>
</iframe>
<iframe src="index2.html" width="100%" height="300" name='if2'>
</iframe>
</body>
</html>
index1.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
function init()
{
alert(parent.frames['if2'].document.getElementById('d2').innerText);
}
window.onload = init;
</script>
</head>
<body>
<div id='d1'>hello world</div>
</body>
</html>
index2.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
<div id='d2'>hello java</div>
</body>
</html>
分享到:
相关推荐
主要介绍了Jquery方式如何获取iframe页面中的Dom元素,需要的朋友可以参考下
本篇主要是对JS操作iframe里的dom进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
js控制/获取a.html中iframe加载的b.html中的iframe,很多人都以为getElementById可以直接获取,其实不行的,以上代码就解决了这个问题,js控制iframe加载页面的iframe,不过测试只在IE和火狐通过,谷歌不行,其他自...
下面小编就为大家带来一篇原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
iframe的DOM操作 iframe的DOM操作 iframe的DOM操作 iframe的DOM操作
主要介绍了在vue中实现嵌套页面(iframe),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
JS获取iframe内容【简化版】
js获取iframe中的内容
首先在父页面的javascript给定义一个window.name,并赋予一个字符串值,如window.name="test",其中赋予的字符串值可以随意定义,然后在Iframe页面的Form 标签中定义target属性,并且其值也必须与之前定义的window....
主要介绍了js调用iframe实现打印页面内容的方法,需要的朋友可以参考下
主要处理javascript对iframe框架的处理
JS页面跳转和js对iframe进行页面跳转、刷新
iframe框架\JS获取iframe元素
IE方法:document.frames[‘myFrame’].document.getElementById(‘test’).value; 火狐方法:document.getElementById(‘myFrame’).contentWindow.document.getElementById(‘test’).value; ...
就想弄一个winform结合html5的一个小东西,突有心血来潮,想在里面嵌套一个微信网页版,下面小编给大家介绍下HTML阻止iframe跳转页面并使用iframe在页面内嵌微信网页版的实现方法,一起看看吧
这个库允许的高度与同跨域iframe来适应他们所包含的内容的宽度自动调整大小。它最常见的问题与使用iframes提供一系列的功能,其中包括: 高度和宽度大小的iframe内容大小。 作品以多个嵌套的iframe。 跨域iframe域...
本文为大家详细介绍下父窗口中操作iframe、在子窗口中操作父窗口,获取iframe内的dom对象有两种方法,感兴趣的朋友可以了解下哈,希望对大家有所帮助
子页面获取父页面的方法,变量,标签等子页面获取父页面的方法,变量,标签等
Iframe装载在div中,设置iframe的大小。