首页 > 解决方案 > setInterval 和 clearInterval 具有相同的按钮

问题描述

嘿,我只是想知道只有一个按钮的 setInterval 和 clearInterval 对我有用吗?

var checkExist;

function checkOn() {
  checkOff();
  checkExist = setInterval(function() {
    if ($('#advert').css('display') == 'block')
      $('#statsContinue').trigger('click');
  }, 1000); // Speed for check 
}

function checkOff() {
  if (checkExist !== null) {
    clearInterval(checkExist);
    checkExist = null;
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<button onclick="checkOn();" style="">Skip Stats On</button>
<button onclick="checkOff();" style="">Skip Stats Off</button>

标签: javascriptjqueryhtml

解决方案


验证是否checkExist为空或不采取这样的行动:

var checkExist = null;

function toggle_check() {
  clearInterval(checkExist);
  if (checkExist !== null) {
    checkExist = null;
  } else {
    checkExist = setInterval(function() {
      if ($('#advert').css('display') == 'block')
        $('#statsContinue').trigger('click');
        console.log('triggered!');
    }, 1000); // Speed for check 
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<button onclick="toggle_check();" style="">Skip Stats On</button>


推荐阅读