• javascript浏览器窗口之间传递数据


    摘要:

      在项目开发中我们经常会遇到弹窗,有的是通过div模拟弹窗效果,有的是通过iframe,也有通过window自带的open函数打开一个新的窗口。今天给大家分享的是最后一种通过window.open()函数打开页面进行数据交互。首先看下效果图:

    原理:

      父窗口给子窗口传递数据是通过url的参数传递过去,子窗口给父窗口传递数据是通过父窗口的全局函数传递。

    代码:

    index.html

    复制代码
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        <div id="content"></div>
        <button id="test">按钮</button>
        <script>
            var test = document.getElementById('test');
            test.onclick = function() {
                window.open('./window.html?param1=name&param2=password', '_blank','width=960,height=650,menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes');
            };
            window.getContent = function(tx) {
                document.getElementById('content').innerText = tx;
            }
        </script>
    </body>
    </html>
    复制代码

    window.html

    复制代码
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        <div id="content"></div>
        <select name="" id="city">
            <option value="shanghai">上海</option>
            <option value="hangzhou">杭州</option>
        </select>
        <script>
            var params = location.href.substring(location.href.lastIndexOf('?')+1).split('&');
            document.getElementById('content').innerText = params;
            var city = document.getElementById('city');
            city.onchange = function() {
                window.opener.getContent(city.value);
            }
        </script>
    </body>
    </html>
    行到水穷处,坐看云起时。 中岁颇好道,晚家南山陲。 兴来每独往,胜事空自知。 偶然值林叟,谈笑无还期。
  • 相关阅读:
    python数据1-5
    python密码1-2
    css Loading 教程
    定制化jQuery
    PHP 将MySQL数据导出csv
    windows MySQL 5.7 导出表方法记录
    前端UI
    我的框架说明文档 2016-04-06
    微信公众号内支付(三)
    微信公众号内支付(二)
  • 原文地址:https://www.cnblogs.com/bjxq-cs88/p/8559950.html
Copyright © 2020-2023  润新知