单击html链接时如何停止倒计时器的运行?

时间:2016-02-03 11:56:52

标签: javascript html timer

我已经为我们的学生制作了这个网页,它将在登录时通过bat文件以kiosk模式打开Internet Explorer,一旦打开它将在20秒后自动关闭Internet Explorer。学生还可以通过页面上的关闭链接关闭页面。

我遇到的问题是我希望学生能够通过页面上的链接停止倒数计时器,以便他们可以根据需要查看它。当他们想要关闭页面时,他们可以使用“关闭页面”链接。

我试图找到一种方法来阻止脚本在单击“停止计时器”链接时运行,但是我还没有找到一种方法来执行此操作,我对JavaScript也知之甚少。如果有人能指出我正确的方向,将会很有帮助。



<script type="text/javascript">
  var seconds = 21;

  function startTimer() {
    window.setInterval("updateTime()", 1000);
  }

  function updateTime() {
    --seconds;
    document.getElementById("soFar").innerHTML = seconds;

    if (seconds <= 0) {
      window.open('', '_self').close();
    }
  }
</script>

<body onload="startTimer()">
  <br />
  <br />
  <p>Seconds you have spent viewing this page so far:<strong id="soFar">20</strong>
  </p>
  <br />
  <br />
  <a href="#" onClick="updateTime(); return false;">Stop Timer</a>
  <br />
  <br />
  <a href="javascript:window.open('','_self').close();">close</a>
  <br />
  <br />
  <a href="images/Maths Flash Cards/Slide<?php $random = rand(1,66); echo $random; ?>.JPG" rel="lightbox-maths">
    <br />
    <img src="images/Maths Flash Cards/Slide<?php echo $random; ?>.JPG" alt="" width="327" class="imagezoom" />
  </a>
</body>
&#13;
&#13;
&#13;

谢谢。

1 个答案:

答案 0 :(得分:3)

像这样使用setInterval的变量:

var tmr = window.setInterval( "updateTime()", 1000 );

然后使用下面的clearInterval来停止计时器:

clearInterval(tmr);

最重要的是,确保tmrsetInterval范围内均可访问clearInterval