如何在定时器变为零后自动关闭窗口?
这里是倒计时代码:
function countDown(){
seconds--
$("#seconds").text(seconds);
if (seconds === 0){
clearInterval(i);
}
}
var seconds = 5,
i = setInterval(countDown, 1000);
答案 0 :(得分:0)
您应该将其从setInterval()更改为setTimeout()。
setTimeout()仅在您指定的延迟后以毫秒为单位执行一次。
这是doco:https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout
以下是一个例子:
var updateText = function() {
$("p").text("Text is now updated");
}
setTimeout(updateText, 2000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p>This text will be updated after 2 seconds (2000 milliseconds).</p>
答案 1 :(得分:0)
您无法关闭窗口。但是,您可以关闭在同一个JS文件中打开的所有窗口。
var thisiswindow = null;
function openWindow() {
thisiswindow = window.open("", "HiImWindow", "width=150, height=75"); // Opens a new window
}
openWindow();
function closeWindow {
thisiswindow.close();
}
答案 2 :(得分:0)
如果您的窗口由父窗口打开,您可以从父窗口关闭窗口。请参阅http://www.w3schools.com/jsref/met_win_close.asp。
虽然窗口无法关闭,但请参阅window.close and self.close do not close the window in Chrome。
还有一些建议:
Receiver