javascript window.open打开新窗口后无法再次打开该窗口问题的解决方法


Posted in Javascript onApril 12, 2014

在系统中,会一些地方使用javascript open window。比如打开固定模式的窗口,防止用户进行其他操作。

参数:

参数 | 取值范围 | 说明
alwaysLowered | yes/no | 指定窗口隐藏在所有窗口之后 
alwaysRaised | yes/no | 指定窗口悬浮在所有窗口之上 
depended | yes/no | 是否和父窗口同时关闭 
directories | yes/no | Nav2和3的目录栏是否可见 
height | pixel value | 窗口高度 
hotkeys | yes/no | 在没菜单栏的窗口中设安全退出热键 
innerHeight | pixel value | 窗口中文档的像素高度 
innerWidth | pixel value | 窗口中文档的像素宽度 
location | yes/no | 位置栏是否可见 
menubar | yes/no | 菜单栏是否可见 
outerHeight | pixel value | 设定窗口(包括装饰边框)的像素高度 
outerWidth | pixel value | 设定窗口(包括装饰边框)的像素宽度 
resizable | yes/no | 窗口大小是否可调整 
screenX | pixel value | 窗口距屏幕左边界的像素长度 
screenY | pixel value | 窗口距屏幕上边界的像素长度 
scrollbars | yes/no | 窗口是否可有滚动栏 
titlebar | yes/no | 窗口题目栏是否可见 
toolbar | yes/no | 窗口工具栏是否可见 
Width | pixel value | 窗口的像素宽度 
z-look | yes/no | 窗口被激活后是否浮在其它窗口之上

实例:
window.open("page.html", "newwindow", "height=100, width=100, top=0,left=0,toolbar=no, menubar=no, scrollbars=no,resizable=no, location=no, status=no")

根据分辨率计算高度和宽度后打开:
var ht = screen.height-98;
var widhh = screen.width - 20;
window.opener = null;
window.open("", "_self");
window.open("Main.aspx", "newwindow" + JsGuid(),
"height=" + ht + ", width=" + widhh + ",
depended=yes,top=0,left=0,toolbar=no, menubar=no,
 scrollbars=yes, resizable=no, location=no, status=yes");window.close();

并关闭原来的窗口。

问题:

在window.open后,如果系统退出,再次使用window.open打开新页面的时候,会出现错误。

google了半天也没找到。一想这个问题应该不常发生肯定是配置的问题。

其中,我们可以看到window.open的第二个参数是新窗口的名字。这个名字是不能重复的。

如果重复了就是一直在这个窗口打开刷新。

所以我加了一个js的随机GUID函数。

function s4() {
    return Math.floor((1 + Math.random()) * 0x10000)
               .toString(16)
               .substring(1);
};
function JsGuid() {
    return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
           s4() + '-' + s4() + s4() + s4();
}

打开窗口的时候使用:window.open("Main.aspx", "newwindow" + JsGuid());
OK,问题解决。

 

Javascript 相关文章推荐
经典海量jQuery插件 大家可以收藏一下
Feb 07 Javascript
jQuery 获取URL参数的插件
Mar 04 Javascript
制作jquery遮罩层效果导航菜单代码分享
Dec 25 Javascript
js正则表达exec与match的区别说明
Jan 29 Javascript
jquery幻灯片插件bxslider样式改进实例
Oct 15 Javascript
js事件处理程序跨浏览器解决方案
Mar 27 Javascript
JavaScript判断用户名和密码不能为空的实现代码
May 16 Javascript
JQuery控制DIV的选取实现方法
Sep 18 Javascript
Vue.js教程之axios与网络传输的学习实践
Apr 29 Javascript
详解如何在react中搭建d3力导向图
Jan 12 Javascript
Vue2.0系列之过滤器的使用
Mar 01 Javascript
使用JavaScript通过前端发送电子邮件
May 22 Javascript
jQuery中阻止冒泡事件的方法介绍
Apr 12 #Javascript
jquery ajax应用中iframe自适应高度问题解决方法
Apr 12 #Javascript
javascript事件冒泡详解和捕获、阻止方法
Apr 12 #Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
Apr 12 #Javascript
用jquery写的菜单从左往右滑动出现
Apr 11 #Javascript
瀑布流布局代码一例
Apr 11 #Javascript
javascript读写json示例
Apr 11 #Javascript
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
2016/03/21 PHP
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
thinkPHP5.0框架应用请求生命周期分析
2017/03/25 PHP
PHP扩展安装方法步骤解析
2020/11/24 PHP
json 入门基础教程 推荐
2009/10/31 Javascript
js 绑定带参数的事件以及手动触发事件
2010/04/27 Javascript
15个款优秀的 jQuery 图片特效插件推荐
2011/11/21 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
JavaScript设置首页和收藏页面的小例子
2013/11/11 Javascript
IE中的File域无法清空使用jQuery重设File域
2014/04/24 Javascript
JS实现文字向下滚动完整实例
2015/02/06 Javascript
JS使用ajax方法获取指定url的head信息中指定字段值的方法
2015/03/24 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
RequireJS多页面应用实例分析
2016/06/29 Javascript
chrome浏览器如何断点调试异步加载的JS
2016/09/05 Javascript
微信小程序 标签传入数据
2017/05/08 Javascript
深入理解Vue transition源码分析
2017/07/30 Javascript
javascript input输入框模糊提示功能的实现
2017/09/25 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
如何让node运行es6模块文件及其原理详解
2018/12/11 Javascript
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
python with statement 进行文件操作指南
2014/08/22 Python
浅谈Python接口对json串的处理方法
2018/12/19 Python
python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决
2019/04/29 Python
Python手绘可视化工具cutecharts使用实例
2019/12/05 Python
python读取与处理netcdf数据方式
2020/02/14 Python
Python用access判断文件是否被占用的实例方法
2020/12/17 Python
孕妇内衣和胸罩:Cake Maternity
2018/07/16 全球购物
绘画专业自荐信
2014/07/04 职场文书
红领巾广播站广播稿(3篇)
2014/09/20 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
余世维讲座观后感
2015/06/11 职场文书
python unittest单元测试的步骤分析
2021/08/02 Python
el-form每行显示两列底部按钮居中效果的实现
2022/08/05 HTML / CSS