IE、Firefox与Chrome浏览器无提示关闭窗口的JS实现方案

作者:竹影时间:2026-10-23 23:59:14浏览:144

本文汇总了多种在IE、Firefox和Chrome浏览器中实现无提示关闭窗口的JavaScript代码。针对Firefox需修改about:config配置,IE可通过window.opener属性处理,Chrome则利用open方法配合close。文中提供了多段兼容代码及旧版IE ActiveX控件方案,并附带测试说明与注意事项,帮助开发者解决跨浏览器关闭窗口的兼容性问题。

Firefox浏览器配置与基础兼容方案

经本站编辑整合的版本:



注意

如果你使用的是firefox浏览器必须要做以下设置


1、在地址栏输入about:config然后回车,警告确认


2、在过滤器中输入”dom.allow_scripts_to_close_windows“,双击即可将此值设为true


即可完成了。



多浏览器兼容关闭窗口代码示例

js关闭窗口兼容firefox、chrome、ie


代码如下:

 
function windowclose() {
var browserName = navigator.appName;
if (browserName=="Netscape") {
window.open('', '_self', '');
window.close();
} 
else {
if (browserName == "Microsoft Internet Explorer"){
window.opener = "whocares";
window.opener = null;
window.open('', '_top');
window.close();
} 
} 
} 


在IE7/ Firefox 3.0/ Google Chrome通过测试


CloseDemo.htm


代码如下:


代码如下:

 
<script>
var browserName=navigator.appName;
if (browserName=="Netscape")
{ 
function closeme()
{ 
window.open('','_parent','');
window.close();
} 
} 
else
{ 
if (browserName=="Microsoft Internet Explorer")
{ 
function closynoshowsme()
{ 
window.opener = "whocares";
window.close();
} 
} 
} 
</script>
<input type="button" value="close me 3" onclick="closeme();"/>

测试比较好用代码:


代码如下:

 
<script type="text/javascript">
function closeme()
{ 
var browserName = navigator.appName;
if (browserName=="Netscape")
{ 
window.open('','_parent','');
window.close();
} 
else if (browserName == "Microsoft Internet IE")
{ 
window.opener = "whocares";
window.close();
} 
} 
</script>
<input type="button" value="close me 3" onclick="closeme();"/>

旧版IE ActiveX控件方案及注意事项

以下内容仅供参考:


代码如下:

<script type="text/javascript"> function closeme(){ var browserName=navigator.appName; if (browserName=="Netscape") { window.open('','_parent',''); window.close(); } else if (browserName=="Microsoft Internet IE") { window.opener = "whocares"; window.close(); } }setInterval('closeme()',3000);</script>

上面的setInterval('closeme()',3000);是为了延迟3秒关闭,如果不想延迟可以直接替换为closeme();即可。


JavaScript无提示关闭窗口(兼容IE/Firefox/Chrome)


第一个下面是实际代码,比较不错,推荐使用。但ie兼容性不好
 <input type="button" value="close me 3" onclick="closeme();"/>

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]



第二个:只针对ie7 ie8 ie6的代码

javascript 无提示关闭窗口脚本


 <input type=button value="关闭" onclick="CloseWin()">

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]


注意“

如果你使用的是firefox浏览器必须要做以下设置


1、在地址栏输入about:config然后回车,警告确认


2、在过滤器中输入”dom.allow_scripts_to_close_windows“,双击即可将此值设为true


即可完成了



另下面是一些以前发的一些文章,但现在已经不能用了,但部分的东西,还是值得想深入的朋友参考的。


试试下面代码:



<object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>


<input type="button" name="Button" value="关闭窗口" onClick="document.all.WebBrowser.ExecWB(45,1)">



试着改变参数会得到其他一些功能:



WebBrowser.ExecWB(1,1) 打开


WebBrowser.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口


WebBrowser.ExecWB(4,1) 保存网页


WebBrowser.ExecWB(6,1) 打印


WebBrowser.ExecWB(7,1) 打印预览


WebBrowser.ExecWB(8,1) 打印页面设置


WebBrowser.ExecWB(10,1) 查看页面属性


WebBrowser.ExecWB(15,1) 好像是撤销,有待确认


WebBrowser.ExecWB(17,1) 全选


WebBrowser.ExecWB(22,1) 刷新


WebBrowser.ExecWB(45,1) 关闭窗体无提示



这些只对IE5.5以上版本有效,我是在IE6下测试的,通过的。




在不是js打开的页面上按window.close(),会有提示框,很烦,现在可以不用了,没有提示框直接关闭窗口。




以前有人贴过利用IE5.5/6.0漏洞做的无提示窗口,



<object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>


<input type="button" name="Button" value="关闭窗口" onClick="document.all.WebBrowser.ExecWB(45,1)">



但后来ie6.0出了补丁,便失效了



现在有一种很简单的无提示关闭窗口代码如下 :



<input type="button" onClick="window.opener='dxy';window.close();" value="IE6最简单的无提示关闭窗口" >

作者最新文章