解析javascript window.opener功能与open方法配合使用
92 浏览量
更新于2024-08-29
收藏 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网页开发中处理窗口间通信的重要技能,尤其是在需要在多个窗口之间共享数据或者控制布局时。记住,要确保在实际应用中遵循安全性和用户体验的最佳实践。
338 浏览量
284 浏览量
点击了解资源详情
348 浏览量
135 浏览量
2019-03-01 上传
751 浏览量
751 浏览量
371 浏览量

weixin_38716590
- 粉丝: 4
最新资源
- Linux字符设备LED驱动开发指南
- DAB变换器仿真与闭环控制技术研究
- CentOS 7 Linux系统GCC编译器离线安装指南
- 深入解析霍夫曼树与堆排序在C++中的实现
- Python编程入门指南(2020年1月版)
- C#图书管理系统源码:初学者学习工具
- STM32F4与ADS1292心电图数据采集与分析
- MFC Dialog程序实现多功能集成演示
- 打造线上健身新体验:Fitness-Online应用开发
- 深入解析:C++中经典排序算法的实现与应用
- 打造简易购物车系统的实现方法
- GIF处理工具Gif4j Pro 2.3版发布,无水印体验
- 全新升级3gp视频转换器发布,效率与性能全面提升
- Cocos2D-3.4实现华容道游戏开发详解
- 深入解析Socket和TCP协议的压缩包教程
- JavaScript网页设计实例教程源代码解析