新版本的浏览器中, 因为安全原因,js不能关闭非js打开的页面。比如如果是手动输入url打开的页面,js就没有权限关闭这个页面。
但是可以通过chrome插件来实现这个目的。不过应用场景就仅限于安装了插件的浏览器。通常适合本地演示的时候使用。
示例源码下载:
https://github.com/jdk137/learningChromeExtension/tree/master/src/webRequestBlocking
大家可以下载安装链接中closeTab文件夹的插件,
然后,打开test.html进行测试。
前端页面中调用下面的函数即可。
function closeWindow () {
var x = new XMLHttpRequest();
x.open('GET', 'https://mock_didi_project.com/');
x.send();
// $.get('https://mock_didi_project.com/', function () {});
}
插件的原理是劫持特定地址的ajax请求,如果发现该地址的请求,就关闭当前页面。
在新版本浏览器中,出于安全考虑,JavaScript无法关闭非JS打开的页面。本文介绍了一种通过Chrome插件绕过此限制的方法,插件会监听特定的AJAX请求,一旦请求被发送,将自动关闭当前页面。适用于本地演示等场景。
6121

被折叠的 条评论
为什么被折叠?



