window.close() 小结

1、含义:关闭当前窗口或某个指定的窗口

2、遇到的问题:

(1)调用改方法时会有出个提示“您查看的网页正在试图关闭窗口。是否关闭窗口?”,如何才能不弹出这个提示?

“如果你第一次打开这个网页,window.close()就会弹出提示,
如果这个网页是由其它的网页window.open()出来的页面,window.close()时,就不会出现提示;

解决方法:

window.opener='';
window.close();

(2)IE8使用上述方法还是会弹出提示框

窗口由a标签的href属性打开的

解决方法:

 window.opener=null;
window.open('', '_self', '');
window.close();

关于window.opener请参考:
http://www.cnblogs.com/zhangzt/archive/2009/12/24/1631253.html

3、局限性:该方法只能关闭由window.open方法打开的窗口.如果一个窗口不是由脚本打开的,调用该方法时,JavaScript控制台会出现下面的错误:

"不能使用脚本关闭一个不是由脚本打开的窗口"

只有通过 JavaScript 代码打开的窗口才能够由 JavaScript 代码关闭。这阻止了恶意的脚本终止用户的浏览器。

解决方法:望大家提出合理解决办法(兼容IE8)

你可能感兴趣的:(window.close() 小结)