不同窗口之间js方法,变量以及节点的访问
2015-01-29 10:14
471 查看
一直以来不太理解,如果如何在其他页面中访问某一页面中的js方法或变量以及节点标签,
今天分析了一下明白了他的原理:
在web中window代表浏览器打开的窗口,而document对象是当html页面加载到浏览器的时候生成的一个对象,是用来操作html页面中所有的节点元素的
这样就很明显了,在html中写的js代码当然是window对象的了,因为window对象就代表了当前开打的窗口(包括js,html内容),而document只是用于进行操作html中的节点的
所以如果想要访问html页面中的js代码就得通过window对象了,要想访问访问html页面中的某一个节点当然就得通过document了。
ex:
A页面:(里面包含了一个嵌套的iframe)
<html>
<script>
var a;
</script>
<a id="ahref"></a>
<iframe id="biframe">
B页面:
<html>
<script>
var b;
</script>
</html>
</iframe>
<html>
B页面访问A页面中的a标签:top.document.getElementById("biframe")
B页面访问A页面中的js变量a:top.a(top就代表了A页面的window对象)
A页面访问B页面中的js变量b:document.getElementById("biframe").contentWindow.b,其中document.getElementById("biframe")是为了获取B页面所在的iframe节点,document.getElementById("biframe").contentWindow是为了获取在iframe对象中B页面的window对象
ps:A页面和B页面的关系是层级关系,也就是A页面是包含B页面的,这里要区分使用open方法打开的页面(如果B页面是A页面open打开的窗口,那么B页面要通过opener来获取A页面的window对象)
今天分析了一下明白了他的原理:
在web中window代表浏览器打开的窗口,而document对象是当html页面加载到浏览器的时候生成的一个对象,是用来操作html页面中所有的节点元素的
这样就很明显了,在html中写的js代码当然是window对象的了,因为window对象就代表了当前开打的窗口(包括js,html内容),而document只是用于进行操作html中的节点的
所以如果想要访问html页面中的js代码就得通过window对象了,要想访问访问html页面中的某一个节点当然就得通过document了。
ex:
A页面:(里面包含了一个嵌套的iframe)
<html>
<script>
var a;
</script>
<a id="ahref"></a>
<iframe id="biframe">
B页面:
<html>
<script>
var b;
</script>
</html>
</iframe>
<html>
B页面访问A页面中的a标签:top.document.getElementById("biframe")
B页面访问A页面中的js变量a:top.a(top就代表了A页面的window对象)
A页面访问B页面中的js变量b:document.getElementById("biframe").contentWindow.b,其中document.getElementById("biframe")是为了获取B页面所在的iframe节点,document.getElementById("biframe").contentWindow是为了获取在iframe对象中B页面的window对象
ps:A页面和B页面的关系是层级关系,也就是A页面是包含B页面的,这里要区分使用open方法打开的页面(如果B页面是A页面open打开的窗口,那么B页面要通过opener来获取A页面的window对象)
相关文章推荐
- JavaScript基础(基本语法:变量、语句、数组、函数、对象、全局方法以及js与java不同,js与html关联)
- js中多层关系窗口之间访问
- JAVASCRIPT访问父窗口的变量或方法
- html中iframe子页面与父页面元素的访问以及js变量的访问
- Popup窗口访问父窗口的5种方法以及相互传值
- html中iframe子页面与父页面元素的访问以及js变量的访问
- Activity_01常见控件的使用方法以及不同Activity之间的通信
- ios不同类之间相互访问成员的方法
- js访问xml之节点对象属性和方法【1】
- js中获得父窗口链接getParent方法以及各种打开窗口的方法
- C#中不同窗口之间传递值的两种方法
- Popup窗口访问父窗口的5种方法以及相互传值
- Popup窗口访问父窗口的方法以及相互传值
- Activity_01常见控件的使用方法以及不同Activity之间的通信
- 不同编码网站内容之间的JS调用方法
- javascript中,当父窗口打开一个新窗口,当前新窗口怎么去访问父窗口的变量或方法呢?
- Popup窗口访问父窗口的4种方法以及相互传值事件。
- Popup窗口访问父窗口的4种方法以及相互传值
- 解析js中获得父窗口链接getParent方法以及各种打开窗口的方法
- 不同的JS文件之间方法的调用