2015-12-03 59 views
3

我尝试设置一个简单的注销页面,该页面应在3秒后关闭。window.close()之前的等待/睡眠

关于此Question是否可以在该操作之前等待?

<script type="text/javascript"> 
sleep(3000); 
window.open('', '_self', ''); 
window.close(); 
</script> 

随着睡眠什么也没有发生。

编辑:

@Sidius的溶液工作得很好,在IE而不提示。

不幸的是火狐块脚本:

脚本不能关闭不是由脚本

+1

'window.setTimeout(函数(){},时间);'? – www139

+0

你是说新窗口打开,等待3秒钟然后关闭? – www139

+0

这是否会破坏你没有打开的浏览器真的仍然有效? – epascarello

回答

2

可以使用的setTimeout()API来实现相同的打开的任何窗口 -

setTimeout(window.close,3000); 
4

试试这个:

window.open('', '_self', ''); 
setTimeout(function(){ 
    window.close(); 
}, 3000); 

编辑: 我认为火狐可能会有点更加严格与

window.open() 

功能。 你可能想给函数的构造函数赋值。

window.open(URL,name,specs,replace); 

在例如:

window.open("", "", "width=200, height=100"); 
+0

您的编辑也会被阻止。我想这是由于我们公司的Firefox安全选项。 – BlueFox

+0

请参阅此处链接:https://developer.mozilla.org/en-US/docs/Web/API/Window/open 如果这也行不通,那么您肯定是对的。 @BlueFox – Sidius

1

您需要使用window.setTimeout()

window.open('', '_self', ''); 
// Add this instead. 
setTimeout(function(){ 
    window.close(); 
}, 3000);