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 新手学习常见问题解决方法
Apr 18 Javascript
JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题
Aug 12 Javascript
40款非常棒的jQuery 插件和制作教程(系列二)
Nov 02 Javascript
javascript计算星座属相(十二生肖属相)示例代码
Jan 09 Javascript
js中settimeout方法加参数
Feb 28 Javascript
一张Web前端的思维导图分享
Jul 03 Javascript
jquery性能优化高级技巧
Aug 24 Javascript
理解javascript正则表达式
Mar 08 Javascript
vue-router 学习快速入门
Mar 01 Javascript
bootstrap选项卡扩展功能详解
Jun 14 Javascript
页面点击小红心js实现代码
May 26 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
Dec 10 Vue.js
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 tp验证表单与自动填充函数代码
2012/02/22 PHP
PHP编码转换函数 自动转换字符集支持数组转换
2012/12/16 PHP
深入apache host的配置详解
2013/06/09 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
CI框架中数据库操作函数$this->db->where()相关用法总结
2016/05/17 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
2017/03/08 PHP
一个实用的php验证码类
2017/07/06 PHP
ExtJS 2.2.1的grid控件在ie6中的显示问题
2009/05/04 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
2012/11/20 Javascript
通过javascript获取iframe里的值示例代码
2013/06/24 Javascript
随鼠标上下滚动的jquery代码
2013/12/05 Javascript
js点击文本框弹出可选择的checkbox复选框
2016/02/03 Javascript
微信小程序 教程之注册页面
2016/10/17 Javascript
bootstrap中的 form表单属性role="form"的作用详解
2017/01/20 Javascript
vue2.0 路由不显示router-view的解决方法
2018/03/06 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
vuex 实现getter值赋值给vue组件里的data示例
2019/11/05 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
js前端传json后台接收‘‘被转为quot的问题解决
2020/11/12 Javascript
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
Python的Socket编程过程中实现UDP端口复用的实例分享
2016/03/19 Python
TensorFlow模型保存/载入的两种方法
2018/03/08 Python
Python定义二叉树及4种遍历方法实例详解
2018/07/05 Python
Python使用cx_Freeze库生成msi格式安装文件的方法
2018/07/10 Python
python导入模块交叉引用的方法
2019/01/19 Python
python 用 xlwings 库 生成图表的操作方法
2019/12/22 Python
Python常用base64 md5 aes des crc32加密解密方法汇总
2020/11/06 Python
教育专业自荐书范文
2013/12/17 职场文书
挂职思想汇报
2013/12/31 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
房地产财务管理制度
2014/02/02 职场文书
社区健康教育工作方案
2014/06/03 职场文书
青春飞扬演讲稿
2014/09/11 职场文书
精神病医院见习报告
2014/11/03 职场文书
2015年销售人员工作总结
2015/04/07 职场文书
军事博物馆观后感
2015/06/05 职场文书