JavaScript子窗口调用父窗口变量和函数的方法


Posted in Javascript onOctober 09, 2015

本文实例讲述了JavaScript子窗口调用父窗口变量和函数的方法。分享给大家供大家参考。具体如下:

示例1:子窗口是新打开的窗口

父窗口:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
  <title>parent</title>
  <script type="text/javascript">
    var parentPara='parent';
    function parentFunction() {
      alert(parentPara);
    }
  </script>
</head>
<body>
  <button onclick="parentFunction()">显示变量值</button>
  <button onclick="window.open('child.html')">打开新窗口</button>
</body>
</html>

子窗口:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
  <title>child</title>
  <script type="text/javascript">
    function modify() {
      opener.parentPara='child';
    }
  </script>
</head>
<body>
  <button onclick="opener.parentFunction()">调用父页面的方法</button>
  <button onclick="modify()">更改父页面中变量的值</button> 
</body>
</html>

只要在变量和函数前面加opener就可以访问指定资源了。

但是当父窗口被关闭时,再如此使用会报一个错:"被调用的对象已与其客户端断开连接。"

示例2:子页面是父页面的一个iframe

父页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
  <title>parent</title>
  <script type="text/javascript">
    function fill() {
      //alert(frame1.window.childPara);  //显示frame1内的变量值
      var str=document.getElementById('txt1').value; //获得文本框内输入的值
      frame1.window.div1.innerHTML=str; //将值填入子页面的一个div中
    }
  </script>
</head>
<body>
  <div style="background-color:yellow;width:300px;height:300px;">
    父页面
    <iframe id="frame1" src="child.html" frameborder="0" scrolling="no" width="120px" height="120px"></iframe>
    <br/><br/><br/><br/>
    <input id="txt1" type="text"/>
    <button onclick="fill()">将文本框内值填充入子界面</button>
  </div>
</body>
</html>

子页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
  <title>child</title>
  <script type="text/javascript">
    function fun() {
      parent.fill();
    }
  </script>
</head>
<body>
  <div style="background-color:lightblue;width:100px;height:100px;">
    <b>子页面</b><br/>
    <a href="#" onclick="fun()">同父页面按钮</a>
    <div id="div1" style="color:red;">
    </div>
  </div>
</body>
</html>

小发现:刷新父页面时,其中的iframe也会随之刷新;刷新iframe时,父页面不会刷新。

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

Javascript 相关文章推荐
Jquery拖拽并简单保存的实现代码
Nov 28 Javascript
如何让div span等元素能响应键盘事件操作指南
Nov 13 Javascript
让alert不出现弹窗的两种方法
May 18 Javascript
javascript实现仿IE顶部的可关闭警告条
May 05 Javascript
js实现不提交表单获取单选按钮值的方法
Aug 21 Javascript
js添加事件的通用方法推荐
May 15 Javascript
js removeChild 方法深入理解
Aug 16 Javascript
jQuery插件ContextMenu自定义图标
Mar 15 Javascript
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
Sep 14 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
Sep 21 Javascript
js异步接口并发数量控制的方法示例
Nov 22 Javascript
vue form表单post请求结合Servlet实现文件上传功能
Jan 22 Vue.js
js中unicode转码方法详解
Oct 09 #Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
Oct 09 #Javascript
PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
Oct 09 #Javascript
不依赖Flash和任何JS库实现文本复制与剪切附源码下载
Oct 09 #Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 #Javascript
jQuery往返城市和日期查询实例讲解
Oct 09 #Javascript
JS实现黑色风格的网页TAB选项卡效果代码
Oct 09 #Javascript
You might like
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
PHP表单验证内容是否为空的实现代码
2016/11/14 PHP
mapper--图片热点区域高亮组件官方站点
2007/12/22 Javascript
JavaScript之AOP编程实例
2015/07/17 Javascript
Ubuntu系统下Angularjs开发环境安装
2016/09/01 Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
2016/12/12 Javascript
JS实现把一个页面层数据传递到另一个页面的两种方式
2018/08/13 Javascript
详解Puppeteer前端自动化测试实践
2019/02/21 Javascript
JS中的防抖与节流及作用详解
2019/04/01 Javascript
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
2019/05/21 Javascript
Paypal支付不完全指北
2020/06/04 Javascript
详解javascript void(0)
2020/07/13 Javascript
Vue如何将页面导出成PDF文件
2020/08/17 Javascript
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
Python使用Pycrypto库进行RSA加密的方法详解
2016/06/06 Python
简单实现python收发邮件功能
2018/01/05 Python
python实现将读入的多维list转为一维list的方法
2018/06/28 Python
python重试装饰器的简单实现方法
2019/01/31 Python
详解python读取image
2019/04/03 Python
Python小程序 控制鼠标循环点击代码实例
2019/10/08 Python
python实现定时发送邮件到指定邮箱
2020/12/23 Python
Python爬取某平台短视频的方法
2021/02/08 Python
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
Shopbop中文官网:美国亚马逊旗下时尚购物网站
2020/12/15 全球购物
物流专业毕业生推荐信范文
2013/11/18 职场文书
项目总经理岗位职责
2014/02/14 职场文书
《春到梅花山》教学反思
2014/04/16 职场文书
委托协议书范本
2014/04/22 职场文书
工地宣传标语
2014/06/18 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
预备党员转正思想汇报
2014/09/26 职场文书
2016春节慰问信范文
2015/03/25 职场文书
催款律师函范文
2015/05/27 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书