解析javascript window.opener功能与open方法配合使用
150 浏览量
更新于2024-08-30
收藏 93KB PDF 举报
在JavaScript中,`window.opener` 是一个特殊的对象,它返回的是创建当前窗口(即子窗口)的那个窗口的引用。这是一个非常有用的属性,尤其是在处理浏览器窗口之间的通信时。当你在一个窗口(通常称为父窗口)中打开另一个窗口(子窗口)后,`window.opener` 就能让你访问和控制那个父窗口的元素和功能。
当我们在网页上点击链接,通过`window.open()`方法打开新的窗口时,`window.opener` 可以用来向父窗口传递数据。例如,假设在`a.htm`中有一个链接打开`b.htm`,用户在`b.htm`中输入数据后,可以使用以下代码将值赋给`a.htm`中id为"name"的文本框:
```javascript
window.opener.document.getElementById("name").value = "输入的数据";
```
然而,需要注意的是,`window.opener` 在框架结构中并不能直接使用,因为框架中的窗口并不是通过`window.open()`创建的,而是作为框架本身的一部分加载的。如果需要在框架内的页面与外部父窗口交互,可以通过引用框架的父窗口(`parent`)和特定的框架元素(如`frames['frameName']`)来间接实现,例如:
```javascript
parent.frames['frameName'].document.all.input1.value = "要设置的值";
```
`window.open()`函数则是用于打开一个新的浏览器窗口或tab,其基本语法如下:
```javascript
window.open(pageURL, name, parameters);
```
其中:
- `pageURL`:指定要打开的子窗口的URL。
- `name`:可选的,子窗口的名称,用于引用这个窗口。
- `parameters`:一系列的参数字符串,包括窗口大小、位置、工具栏、菜单、滚动条等的设置。
示例中提到的常用参数包括`height`、`width`、`top`、`left`、`toolbar`、`menubar`、`scrollbars`、`resizable`、`location` 和 `status`,它们分别表示窗口的高度、宽度、初始位置以及窗口的可见性。除了这些,还有更多其他参数,如`alwaysLowered`,用于控制窗口是否始终显示在底层等。
理解并熟练运用`window.opener`和`window.open()`是JavaScript网页开发中处理窗口间通信的重要技能,尤其是在需要在多个窗口之间共享数据或者控制布局时。记住,要确保在实际应用中遵循安全性和用户体验的最佳实践。
2626 浏览量
2019-03-01 上传
330 浏览量
340 浏览量
127 浏览量
740 浏览量
748 浏览量
282 浏览量
367 浏览量

weixin_38716590
- 粉丝: 4
最新资源
- VB通过Modbus协议控制三菱PLC通讯实操指南
- simfinapi:R语言中简化SimFin数据获取与分析的包
- LabVIEW温度控制上位机程序开发指南
- 西门子工业网络通信实例解析与CP243-1应用
- 清华紫光全能王V9.1软件深度体验与功能解析
- VB实现Access数据库数据同步操作指南
- VB实现MSChart绘制实时监控曲线
- VC6.0通过实例深入访问Excel文件技巧
- 自动机可视化工具:编程语言与正则表达式的图形化解释
- 赛义德·莫比尼:揭秘其开创性技术成果
- 微信小程序开发教程:如何实现模仿ofo共享单车应用
- TrueTable在Windows10 64位及CAD2007中的完美适配
- 图解Win7搭建IIS7+PHP+MySQL+phpMyAdmin教程
- C#与LabVIEW联合采集NI设备的电压电流信号并创建Excel文件
- LP1800-3最小系统官方资料压缩包
- Linksys WUSB54GG无线网卡驱动程序下载指南