2008-12-10 32 views

回答

10

您的JavaScript代码只能关闭一个窗口,而不需要通过window.open()打开的确认信息。这是一种有意的安全防范措施,因为在网页上运行的脚本不拥有该窗口,并通过关闭它放弃该窗口中的浏览历史记录。

的解决方法是有弹出要关闭与window.open摆在首位,或者告诉你的用户修改自己的浏览器安全设置窗口中的“欢迎页面”或其他某种页面让你的应用程序关闭他们的窗户。

+0

该网页是由用户点击应用程序发送的电子邮件中的链接而生成的。 – 2008-12-10 20:25:11

+1

您可以尝试使链接如Click me。但我怀疑许多邮件客户端将运行JavaScript。不幸的是,我认为你可能不走运。 – Tmdean 2008-12-10 20:30:38

+0

你说得对,我运气不好。我必须实施不同的解决方案。 – 2008-12-10 22:51:59

7

这是一个黑客。

为IE电话:

window.open('close.html', '_self'); 

然后close.html所有你需要的是:

<script>window.close();</script> 

因为这基本上是打开一个弹出窗口,在同一个命名的窗口,当“新”窗口打开,它有一个“开启者”,因此被允许关闭。

20

在打开的弹出窗口中输入以下内容

var objWin = window.self; 
objWin.open('','_self',''); 
objWin.close();