为什么我无法通过window.clearInterval停止setinterval?

时间:2018-08-15 03:09:32

标签: javascript

这是我的window.setIntervalwindow.clearInterval的代码。

window.setInterval工作正常,但是当我尝试致电window.clearInterval时,它将显示错误intervalId is not defined

我该怎么办?

............................................... ......

<div onclick="start_setinterval('1')">START</div>
<div onclick="start_setinterval('0')">STOP</div>


<script>
  function start_setinterval(status) {
    var xxx = setInterval(function() {
      if (status == 1) {
        do_start_setinterval();
      } else {
        clearInterval(xxx);
      }
    }, 5000);
  }

function do_start_setinterval() {
  alert("test");
} 
</script>

1 个答案:

答案 0 :(得分:3)

用于存储对setInterval的引用的intervalId变量在其范围内仅限于函数start_setinterval。您可能需要将其分配给window.intervalId,作为修复此代码的快速方法。