window.open的小技巧分享
- window.open()没有任何参数,这种方式可以新标签打开页面
- window.open(url, name, pars),带有参数的可以在当前页面打开窗口
- window.open()打开的窗口或者新标签返回窗口的window对象
- 在新窗口里也可以取到父窗口(执行window.open的环境)的window对象,通过window.opner
- window.close()方法可以关闭窗口
- window.onunload和window.onbeforeunload事件,监听窗口关闭情况
<!DOCTYPE>
<html>
<head>
<meta charset="utf-8">
<title>window.open小技巧</title>
</head>
<body>
我是窗口:window.open
<button id="openWindow">点击新开窗口</button>
<script type="text/javascript">
(function() {
var openWindowEl = document.getElementById('openWindow');
var newWindow;
var data; window.windowName = 'window.open'; openWindowEl.onclick = function() {
newWindow = window.open('window.close.php', '_blank', 'width=500,height=500;');
//需要window.close.html js正常执行之后才行
/*setTimeout(function() {
console.log(newWindow.userName);
}, 1000);*/
newWindow.onbeforeunload = function() {
userName = newWindow.windowName;
data = newWindow.data;
} newWindow.onunload = function() {
alert(userName);
if(data.errno == 0) {
alert(data.errmsg);
}else {
alert(data.errmsg);
}
}
};
})();
</script>
</body>
</html>
<!DOCTYPE>
<html>
<head>
<meta charset="utf-8">
<title>window新开窗口</title>
</head>
<body>
我是窗口:window.close
<script type="text/javascript">
(function() {
window.windowName = 'window.close';
if(Math.random() > 0.5) {
window.data = {
errno: 0,
errmsg: '成功~'
};
}else {
window.data = {
errno: 1,
errmsg: '数据异常~'
};
}
setTimeout(function() {
//拿到的是父窗口的window
alert(window.opener.windowName);
}, 100);
setTimeout(function() {
window.close();
}, 1000);
})();
</script>
</body>
</html>
window.open的小技巧分享的更多相关文章
- window.open的小技巧分享(转)
今天再次谈起window.open是因为发现了一个比较好玩的小技巧,详细内容我们稍后详细说明. 聊到window.open,不得不说明一下他的使用方法,主要有两种形式: window. ...
- Python编码小技巧分享【新手必学】
本次分享了python编程小技巧总结如下,希望对大家有帮助,非常实用哦注意:很多人学Python过程中会遇到各种烦恼问题,没有人帮答疑.为此小编建了个Python全栈免费答疑交流.裙 :一久武其 ...
- javascript中关于&& 和 || 表达式的小技巧分享
如果你还是新手, 而且读完所有这些技巧的详解和每种技巧是如果工作的以后运用它们, 你会写出更加简练高效的JavaScript程序. 确实, JavaScript高手已经运用这些技巧写出了很多强大, 高 ...
- Visual Studio模板代码注释小技巧分享
在日常开发过程中,难免有这样一种需求:就是你所建的每一个类文件或者接口文件都需要标注下作者姓名以及类的用途.如果我们每次创建文件的时候都需要写一遍这些信息是很烦神的.还好Visual Studio给我 ...
- Android Studio使用小技巧:提取方法代码片段
http://www.jb51.net/article/65510.htm 今天来给大家介绍一个非常有用的Studio Tips,有些时候我们在一个方法内部写了过多的代码,然后想要把一些代码提取出来再 ...
- android浏览器开发小技巧集锦(转)
本人和朋友们做了一段时间浏览器,将一些小技巧分享出来,先写一部分,慢慢写,同时也为我们的浏览器打打广告 我们的浏览器将要上线,名叫沙发浏览 1.网页内的右键菜单 public boolean onLo ...
- openinstall集成小技巧
引言:最近在做一个iOS端的小游戏,想要实现在安装时自动关联好友的功能,就发帖询问有没有好的想法.在帖子中法想了这个不错的SDK,通过它我们还实现了,安装后自动进入好友游戏房间的功能.这里我就分享一下 ...
- 牛腩新闻公布系统--学习Web的小技巧汇总
2014年11月10日,是个难忘的日子.这一天.小编的BS学习開始了.BS的开头,从牛腩新闻公布系统開始.之前学习的内容都是CS方面的知识,软考过后.開始学习BS,接触BS有几天的时间了,跟着牛腩老师 ...
- 牛腩新闻发布系统--学习Web的小技巧汇总
2014年11月10日,是个难忘的日子,这一天,小编的BS学习开始了,BS的开头,从牛腩新闻发布系统开始,之前学习的内容都是CS方面的知识,软考过后,开始学习BS,接触BS有几天的时间了,跟着牛腩老师 ...
随机推荐
- linux boost 安装
sudo apt-get install libboost-dev 但是,我这样安装以后,编译程序时出现了很多错误,而且都是系统文件的错误.我开始以为是我的boost库版本不对,后来换了好几个版本,都 ...
- [转] What is Ec/Io (and Eb/No)?
PS:http://www.telecomhall.com/what-is-ecio-and-ebno.aspx If someone asks you "Which Signal Leve ...
- javascript中的继承用法
本文实例汇总了javascript关于继承的用法,希望本文所述对大家的javascript程序设计有所帮助.分享给大家供大家参考.具体如下:代码如下: /** * 实现子类继承父类,但不会产生多余的属 ...
- UVA 12378 Ball Blasting Game 【Manacher回文串】
Ball Blasting Game Morteza is playing a ball blasting game. In this game there is a chain of differe ...
- C# ashx生成的验证码
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "image/jpeg&qu ...
- hdu 2187
#include <stdio.h> using namespace std; struct race { int p; int w; }; race r[1010]; int cmp(r ...
- 《node.js开发指南》读书笔记(一)
在开发时如果修改了js内容,不能通过刷新浏览器直接看到效果,必须通过重启nodejs程序才能看到,这样显然不利于开发调试,supervisor可以实现这个功能,监视对代码的改动,并自动重启nodejs ...
- 什么是DNN,Dotnetnuke介绍和功能简介
1. What is DNN? DNN是DotNetNuke(DotNet)的简写.它是在IBUYSPY(IBUYSPY是微软用来推广ASP.NET而推出的范例程序)的基础上发展起来的,是一个免费的. ...
- DHCP Relay 简介
DHCP Relay(DHCPR)DHCP中继 也叫做DHCP中继代理 如果DHCP客户机与DHCP服务器在同一个物理网段,则客户机可以正确地获得动态分配的ip地址.如果不在同一个物理网段,则需要DH ...
- Android中通过Java获取Webview加载内容
有时候我们需要在加载webview时,获取加载完成的内容,当然,WebView也是有可能包含javascript.通过以下操作,我们是可以获取到WebView加载的内容. 1.自定义一个内部类,获取W ...