zoukankan      html  css  js  c++  java
  • frame window 和open 的关系

    建立一个如下的关系框架

    windowA.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>windowA</title>
    </head>
    <frameset rows="160,*">
        <frame src="frame.html" name="topFrame">
        <frameset cols="50%,50%">
            <frame src="aframe.html" name="leftFrame">
            <frame src="bframe.html" name="rightFrame">
        </frameset>
    
    </frameset>
    
    </html>

    aframe.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h4>this is aframe.html</h4>
    <script type="text/javascript">
        function sayleft() {
            console.log("frameA from....");
        }
        var age=44;
        console.log(window.age)
        //sayleft()
    </script>
    
    </body>
    </html>

    bframe.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h4>this is aframe.html</h4>
    <script type="text/javascript">
        function sayleft() {
            console.log("frameA from....");
        }
        var age=44;
        console.log(window.age)
        //sayleft()
    </script>
    
    </body>
    </html>

    cframe.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h4>this is aframe.html</h4>
    <script type="text/javascript">
        function sayleft() {
            console.log("frameA from....");
        }
        var age=44;
        console.log(window.age)
        //sayleft()
    </script>
    
    </body>
    </html>

    frame.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h3>this is frame.html</h3>
    <script type="text/javascript">
        function sayHi() {
            console.log("frameTop");
        }
        var age=33;
        console.log(window.age)
        sayHi()
    </script>
    
    </body>
    </html>

        console.log("调用window.opener.parent.leftFrame.sayHi()方法");
        window.opener.parent.frames["leftFrame"].sayleft();
        console.log(window.opener);
        console.log(window.opener.parent.frames["topFrame"].age);
        window.parent.leftFrame.sayleft();

    跳转的页面cframe.html,通过window.opener找到原页面window属性,在通过.parent找到frame.通过frame.函数名来调用函数

    重要说的是: open一个窗口,这个窗口就是独立的window了 和 其他窗口之间就没关系了,唯一的联系就是window.opener属性

  • 相关阅读:
    [机房测试]11.11
    题解——[AHOI2013]作业(莫队)
    [机房测试]11.7
    [机房测试]11.6
    [机房测试]11.5
    [机房测试]11.4
    [机房测试]10.29
    [机房测试]10.28
    初学SPFA
    神奇的游戏
  • 原文地址:https://www.cnblogs.com/zytcomeon/p/13971151.html
Copyright © 2011-2022 走看看