如何让弹出窗口和页面产生联动?

其实关键就是window.opener,这个东西就是如何在子窗口页面中,访问父窗口页面的文档的方法,在frame中,是parent、top这类的东西,知道了这个东西,剩下想做点什么就好说了。

父窗口操作子窗口的话,就利用open的返回值就可以了。

father.htm:

复制代码
<script>
function openChild(){
    var child = window.open("child.htm");
    child.document.getElementById("getValue").value="测试xxx";
}
var jsValue="未设置";
function alertValue(){
    alert(jsValue);
}
</script>

我是父页面。
<input type="button" value="打开子页面" onclick="openChild()" />
<div id="someValue"></div>
<input type="button" value="显示值" onclick="alertValue()" />
复制代码

child.htm:

复制代码
<script>
function setFatherValue(){
    window.opener.document.getElementById("someValue").innerHTML=document.getElementById("getValue").value;
    window.opener.jsValue = document.getElementById("getValue").value;
}
</script>

我是子页面。
<input type="text" id="getValue" value="测试" /><input type="button" value="设置值" onclick="setFatherValue()" />
复制代码
posted @   不是豆豆  阅读(1114)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
友情链接:迷途


点击右上角即可分享
微信分享提示