使用计时器倒计时后关闭窗口

时间:2016-03-02 02:03:20

标签: javascript

如何在定时器变为零后自动关闭窗口?

这里是倒计时代码:

function countDown(){
    seconds--
    $("#seconds").text(seconds);
    if (seconds === 0){
      clearInterval(i);
    }
  }

  var seconds = 5,
      i = setInterval(countDown, 1000);

3 个答案:

答案 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