javascript浏览器窗口之间传递数据的方法


Posted in Javascript onJanuary 20, 2015

本文实例讲述了javascript浏览器窗口之间传递数据的方法。分享给大家供大家参考。具体分析如下:

摘要:

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

javascript浏览器窗口之间传递数据的方法

原理:

父窗口给子窗口传递数据是通过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¶m2=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>

注意:这里需要有服务环境运行

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
ext读取两种结构的xml的代码
Nov 05 Javascript
jQuery 浮动广告实现代码
Dec 25 Javascript
IE6 fixed的完美解决方案
Mar 31 Javascript
jQuery中的.bind()、.live()和.delegate()之间区别分析
Jun 08 Javascript
js实现两点之间画线的方法
May 12 Javascript
基于js实现投票的实例代码
Aug 04 Javascript
AngularJs上传前预览图片的实例代码
Jan 20 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
May 25 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
Jan 06 Javascript
Vue+Express实现登录状态权限验证的示例代码
May 05 Javascript
javascript将扁平的数据转为树形结构的高效率算法
Feb 27 Javascript
vue实现评价星星功能
Jun 30 Javascript
用队列模拟jquery的动画算法实例
Jan 20 #Javascript
jQuery 处理页面的事件详解
Jan 20 #Javascript
DOM 事件流详解
Jan 20 #Javascript
jQuery链使用指南
Jan 20 #Javascript
使用jQuery管理选择结果
Jan 20 #Javascript
javascript动态修改Li节点值的方法
Jan 20 #Javascript
js+css实现tab菜单切换效果的方法
Jan 20 #Javascript
You might like
一步一步学习PHP(5) 类和对象
2010/02/16 PHP
Thinkphp+smarty+uploadify实现无刷新上传
2015/07/30 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
JS中confirm,alert,prompt函数使用区别分析
2010/04/01 Javascript
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
让IE8浏览器支持function.bind()方法
2014/10/16 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
js实现九宫格的随机颜色跳转
2017/02/19 Javascript
vue的全局提示框组件实例代码
2018/02/26 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
vue图片加载失败时用默认图片替换的方法
2019/08/29 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
用Python编写一个简单的Lisp解释器的教程
2015/04/03 Python
详解用Python处理HTML转义字符的5种方式
2017/12/27 Python
Python 爬取携程所有机票的实例代码
2018/06/11 Python
使用Python 正则匹配两个特定字符之间的字符方法
2018/12/24 Python
pyinstaller打包单个exe后无法执行错误的解决方法
2019/06/21 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
Django使用django-simple-captcha做验证码的实现示例
2021/01/07 Python
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
垃圾回收的优点和原理。并考虑2种回收机制
2016/10/16 面试题
学生学习总结的自我评价
2013/10/22 职场文书
大学生专科毕业生自我评价
2013/11/17 职场文书
计算机学生的自我评价分享
2014/02/18 职场文书
社区党建工作方案
2014/06/10 职场文书
禁止高声喧哗的标语
2014/06/11 职场文书
党的群众路线教育实践活动党员个人整改措施
2014/10/27 职场文书
2015年双拥工作总结
2015/04/08 职场文书
加薪申请报告范本
2015/05/15 职场文书
升学宴学生致辞
2015/09/29 职场文书
关于拾金不昧的感谢信(五篇)
2019/10/18 职场文书
MySQL一些常用高级SQL语句
2021/07/03 MySQL
Vue+TypeScript中处理computed方式
2022/04/02 Vue.js