不同窗口之间js方法,变量以及节点的访问

2 篇文章 0 订阅
一直以来不太理解,如果如何在其他页面中访问某一页面中的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对象)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值