JS - 使用setInterval()后如何清除间隔

Acu*_*ubi 10 javascript jquery

setInterval()在下面的用例中使用后有没有人知道如何杀死间隔?

提前致谢!

$(document).ready(function(){
  setInterval(function(){
    $.ajax({ url: "test.php",
      success: function(result){
        $("#results").append(result);
      }
    });
  }, 1000);
});
Run Code Online (Sandbox Code Playgroud)

test.php的

$CT = date('Y-m-d H:i:s', time());
echo $CT;
Run Code Online (Sandbox Code Playgroud)

Yes*_*rry 22

var interval = setInterval(function() {
    $.ajax({
        url: "test.php",
        success: function(result) {
            $("#results").append(result);
        }
    });
}, 1000);

clearInterval(interval);
Run Code Online (Sandbox Code Playgroud)

  • 我觉得你的意思是使用`setTimeout()`代替.在这种情况下,它只会运行一次然后你不需要清除任何东西.. (2认同)

leo*_*ngi 7

您需要使用该clearInterval功能

    var interval = setInterval()....
    clearInterval(interval);
Run Code Online (Sandbox Code Playgroud)

http://www.elated.com/articles/javascript-timers-with-settimeout-and-setinterval/


Jwa*_*hah 5

使用clear interval方法clearInterval();传递你所在的变量setInterval.

例如:

var refreshIntervalId = setInterval(fname, 10000);

clearInterval(refreshIntervalId);
Run Code Online (Sandbox Code Playgroud)