window.close关闭当前页面
浏览器处于安全策略考虑,只允许Javascript关闭由javascript打开的页面,为了用js关闭当前窗口,我们可以这么考虑,这也是最常用的做法。
<a href="javascript:;" onclick='xx()'>fdsafas</a>
function xx(){// 重置window.opener用来获取打开当前窗口的窗口引用// 这里置为null,避免IE下弹出关闭页面确认框window.opener = null;// JS重写当前页面window.open("", "_self", "");// 顺理成章的关闭当前被重写的窗口window.close();
}
stackoverflow上老外的原文解释:
For security reasons, a window can only be closed in JavaScript if it was opened by JavaScript. In order to close the window, you must open a new window with _self
as the target, which will overwrite your current window, and then close that one (which you can do since it was opened via JavaScript).
也附上另外一种解决思路:
window.open('javascript:window.open("", "_self", "");window.close();', '_self');
内嵌的javascript:window.open("", "_self", "");是为了防止IE弹出确认关闭框,等于重置window.opener
FireFox内置支持window.close,但是由于本身的设定,不允许JS自行关闭窗口,所以需要用户手动修改about:config下的dom.allow_scripts_to_close_windows的值为true,再按照上述思路解决问题。
很多情况下用户不会手动去修改FireFox的设置,这里也有个折中的办法,在将"close"的行为变化为"location.href"跳转,仅针对FireFox
function xx(){location.href = "about:blank";
}
综上,JS部分可以修改如下:
var xx = navigator.userAgent.indexOf("Firefox") > -1 ? function(){location.href = "about:blank";}:function(){window.opener = null;window.open("", "_self", "");window.close();};
window.close关闭当前页面相关推荐
- window.showModalDialog关闭子页面后刷新父页面
父页面方法: function addbz(id){ var url="${ctx}/erp/pmDesign/pmDesign/addBZ.ht?id="+id; ...
- javascript 跳转页面 关闭当前页面 返回上页面
//跳转页面 1.window.location.href //跳转到的页面 2.如何有form 表单的话 document.form[0].action = //跳转的action ...
- 使用window.print()后,未关闭打印页面,原网页不能操作
使用window.print()后,未关闭打印页面,原网页不能操作,此时可以试着用window.location.reload()重新加载页面解决问题. 转载于:https://www.cnblogs ...
- a标签跳转后关闭当前页面_微信小程序2020-day-2 导航项目(跳转三种形态)
day-2 导航项目(跳转三种形态) 转发跳转:保留当前页面,跳转新页面,可返回 重定向跳转:关闭当前页面,跳转,不可返回,不能指定标签导航页面 跳转标签导航:跳转到标签导航页面,标签导航跟随选中 a ...
- h5页 点击返回时关闭_在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口...
最近在使用微信.支付宝.百度钱包实现网页支付,对支付成功将自动关闭页面,对于支付失败,将显示错误信息.当在错误页面的时候,点击返回 或者Android物理按键上一步的时候,将关闭页面. 在微信.支付宝 ...
- JAVA怎么实现网页退出系统_java后台实现js关闭本页面,父页面指定跳转或刷新操作...
关闭本页面,跳转到百度 response.setCharacterEncoding("gbk"); PrintWriter out=response.getWriter(); ou ...
- JS事件 卸载事件 当用户退出页面时(页面关闭、页面刷新等),触发onUnload事件,同时执行被调用的程序。注意:不同浏览器对onunload事件支持不同。...
卸载事件(onunload) 当用户退出页面时(页面关闭.页面刷新等),触发onUnload事件,同时执行被调用的程序. 注意:不同浏览器对onunload事件支持不同. 如下代码,当退出页面时,弹出 ...
- js关闭当前页面窗口的问题
有两种情况,如果当前页面窗口是由js代码打开的,那么可以直接用js关闭该窗口 如: window.close(); 如果该页面是由用户输入地址直接进去的,直接close是会无效的,此时需要这样做: w ...
- JS返回前一页(或关闭本页面,返回首页)
navigator.userAgent在判断浏览器版本时,需要自己核对下,不同的浏览器返回的window.history.length值也不同,需要特殊情况特殊处理,但核心逻辑就是如此,先判断浏览器版 ...
最新文章
- 教程 | 基于LSTM实现手写数字识别
- python使用imbalanced-learn的RandomUnderSampler方法进行下采样处理数据不平衡问题
- Weblogic java.lang.OutOfMemoryError: PermGen space
- day06:02oracle体系结构_存储结构
- [分享]极富挑战性的大公司面试的智力题
- 阿里云将增设马来西亚数据中心 中国技术获赞
- OnItemClickListener,OnScrollListener应用
- 【工作经验分享】这些新技术你们都知道吗
- Python 实现网络爬虫小程序
- 使用IDEA在引入Schema空间时报错URI is not registered解决方法
- 清理SharePoint 2010的SQL Server 2008 R2日志数据库的方法
- 注册测绘师成绩查询,2020注册测绘师成绩公布
- .NET Framework 4.6.1包和语言包下载
- Linux权限设置方法
- 台式计算机显示器发蓝,电脑显示器发蓝怎么办
- 拓扑容差如何修改_如何在CAD中通过设置容差参数对多段线进行自动修复重构
- VBS 请求WebAPI接口_如何设计WEB API
- 海康威视2022 校招/社招/实习 内推WHM8BQ
- 过拟合的原因和解决方法
- 前端技能树,面试复习第 1 天—— 建立前端知识框架 | HTML 知识考察点