首页 / 知识
我可以将JavaScript变量传递给另一个浏览器窗口吗?
2023-04-16 20:04:00

Can I pass a JavaScript variable to another browser window?我有一个页面,其中会产生一个弹出浏览器窗口。 我在父浏览器窗口中有一个JavaScript变量,我想将其传递给弹出的浏览器窗口。 有没有办法做到这一点? 我知道可以在同一浏览器窗口中跨框架完成此操作,但是我不确定是否可以在浏览器窗口中跨框架完成操作。 将代码放入问题中,您可以在父窗口中执行以下操作:
或在新窗口中显示以下内容:
我更喜欢后者,因为无论如何您可能都需要等待新页面加载,以便您可以访问其元素或任何您想要的东西。 如果这些窗口来自同一安全域,并且您对另一个窗口有引用,可以。 Javascript的open()方法返回对创建的窗口的引用(如果重用现有窗口,则返回现有窗口)。以这种方式创建的每个窗口都将一个属性应用到该窗口,该属性指向创建该窗口的窗口。 然后,可以使用DOM(取决于安全性)来访问另一个对象或其文档,框架等的属性。 是的,脚本可以访问其具有相同句柄的域中的其他窗口的属性(通常通过window.open/opener和window.frames / parent获得)。通常,调用另一个窗口上定义的函数比直接处理变量更容易管理。 但是,窗口可能会死掉或继续移动,浏览器在处理窗口时会有所不同。在尝试调用窗口之前,请检查窗口(a)仍处于打开状态(!window.closed)和(b)具有您期望的功能。 像字符串之类的简单值很好,但是通常不要在窗口之间传递诸如函数,DOM元素和闭包之类的复杂对象。如果子窗口从其打开器中存储对象,则打开器将关闭,该对象可能会"死"(在某些浏览器中,例如IE),或导致内存泄漏。可能会发生奇怪的错误。 在窗口之间传递变量(如果您的窗口在同一域中)可以通过以下方法轻松完成: 可以将消息从"父"窗口传递到"子"窗口: 在"父窗口"中打开孩子
根据上下文替换 在"孩子"里
if测试必须根据上下文进行更改 在您的父窗口中:
然后在childwindow.html中:
在解析键/值对时,可能应该进行很多错误检查,但此处未包括在内。也许有人可以在以后的答案中提供更具包容性的Javascript查询字符串解析例程。 您可以轻松地传递变量,并在父窗口中引用事物:
是的,只要两个窗口都在同一域中就可以完成。 window.open()函数将返回新窗口的句柄。子窗口可以使用DOM元素" opener"访问父窗口。 对我来说,以下行不通
但这有效(注意变量名)
另外,var B应该是全局的。
您可以将 有关此Stackoverflow帖子的更多信息,请点击此处。
我一直在努力将参数成功传递给新打开的窗口。
示例调用:
现场例子 http://jsfiddle.net/rj6o0jzw/1/ 或者,您可以将其添加到URL中,并让脚本语言(PHP,Perl,ASP,Python,Ruby等)在另一侧进行处理。就像是:
是的,浏览器清除所有参考。一个窗户。因此,您必须在主窗口上搜索某个类的ClassName或将cookie用作Javascript自制引用。 我的项目页面上有一个收音机。然后打开收音机,它在一个弹出窗口中启动,我控制主页上的主窗口链接并显示播放状态,在FF中这很容易,但在MSIE中则不那么容易。但这是可以完成的。
如果您对创建的窗口具有引用,并且它在同一域中,则window.open()函数也将允许此操作。 |
最新内容
相关内容
linux命令窗口调出来?
linux命令窗口调出来?,系统,工具,首页,密码,终端,环境,命令,界面,桌面,图形界面,linux怎么打开命令行窗口1、在Linux系统中,打开命令行窗口需要linux命令增加窗口?
linux命令增加窗口?,系统,环境,工作,位置,地方,时间,终端,首页,密码,图片,linux如何用命令行更改每个窗口的位置1、,第一次启动linux系统会进入linux窗口命令怎么?
linux窗口命令怎么?,系统,环境,情况,命令,终端,窗口,快捷键,文件夹,左下角,界面,Linux里面shell窗口命令Ctrl+s命令作用是什么?1、其实作为命linux下命令行浏览器?
linux下命令行浏览器?,地址,传播,工具,网站,软件,发行,网址,首次,官网,系统,linux在命令符界面如何浏览网页1、linux系统下命令行访问网页是culinux变量释放命令?
linux变量释放命令?,系统,环境,名称,工具,官网,简介,变量,环境变量,命令,内存,如何手动释放Linux内存?1、也就是说可以通过修改/proc中的文件,浏览器调用linux命令?
浏览器调用linux命令?,系统,信息,人工智能,软件,数据,首次,地址,代码,咨询,服务,求助大神,如何通过网页使用python向linux系统发送一些命令执浏览器调用linux命令?
浏览器调用linux命令?,系统,信息,人工智能,软件,数据,首次,地址,代码,咨询,服务,求助大神,如何通过网页使用python向linux系统发送一些命令执linux多个窗口命令?
linux多个窗口命令?,工具,系统,命令,首页,技术,情况,终端,窗口,脚本,界面,Linux一次在多个服务器运行命令1、把你的命令写入一个shell脚本就行linux移动窗口命令?
linux移动窗口命令?,工作,系统,地址,命令,目录,信息,文件,管理,路径,操作,Linux文件的复制、删除和移动命令是.?linux下使用mv命令来移动文件,linux命令窗口退出?
linux命令窗口退出?,状态,档案,系统,命令,分析,实时,工具,编辑,模式,文件,linux的top命令怎样退出Linux退出编辑命令是gedit或vim。若在命令行linux调出变量的命令?
linux调出变量的命令?,系统,工作,工具,信息,地址,代码,标准,名称,官网,命令,linux环境变量怎么设置方法方法一:用export命令,输入“export PATH=linux输入命令的窗口?
linux输入命令的窗口?,系统,电脑,工具,首页,命令,终端,工作,第三,分行,第一,linux怎么打开命令行窗口在Linux系统中,打开命令行窗口需要使用终