Javascript 如何停止函数上的间隔?

Javascript 如何停止函数上的间隔?,javascript,html,Javascript,Html,我得到了一个函数,它是区间数。当它结束时,我需要停止它。代码如下: function cut() { setInterval(function() { timer() }, 1000); } function timer() { seconds = seconds - 1; document.getElementById("timer1").innerHTML = minutes + ":" + seconds; if (seco

我得到了一个函数,它是区间数。当它结束时,我需要停止它。代码如下:

 function cut() {
    setInterval(function() {
       timer()
    }, 1000);
 }


 function timer() {

    seconds = seconds - 1;
    document.getElementById("timer1").innerHTML = minutes + ":" + seconds;
    if (seconds < 10) {
       document.getElementById("timer1").innerHTML = minutes + ":" + "0" + seconds
    }
    if (seconds <= 0) {
       clearInterval("cut()");


       //another code to be executed
    }
 }
function cut(){
setInterval(函数(){
计时器()
}, 1000);
}
函数计时器(){
秒=秒-1;
document.getElementById(“timer1”).innerHTML=minutes+“:”+seconds;
如果(秒<10){
document.getElementById(“timer1”).innerHTML=minutes+“:“+”0“+秒
}

如果(秒您必须保留对从
setInterval()
返回的句柄的引用,然后将其传递给
clearInterval()
,如下所示:

var cutHandle;

function cut() {
    cutHandle = setInterval(timer, 1000);
}

function timer() {
    seconds = seconds - 1;
    var timer = document.getElementById("timer1");
    timer.innerHTML = minutes + ":" + seconds;
    if (seconds < 10) {
        timer.innerHTML = minutes + ":" + "0" + seconds
    }
    if (seconds <= 0) {
        clearInterval(cutHandle);
        //another code to be executed
    }
}
var-cutHandle;
函数割(){
cutHandle=设置间隔(计时器,1000);
}
函数计时器(){
秒=秒-1;
var timer=document.getElementById(“timer1”);
timer.innerHTML=分钟+“:”+秒;
如果(秒<10){
timer.innerHTML=分钟+“:”+“0”+秒
}

如果(秒您必须保留对从
setInterval()
返回的句柄的引用,然后将其传递给
clearInterval()
,如下所示:

var cutHandle;

function cut() {
    cutHandle = setInterval(timer, 1000);
}

function timer() {
    seconds = seconds - 1;
    var timer = document.getElementById("timer1");
    timer.innerHTML = minutes + ":" + seconds;
    if (seconds < 10) {
        timer.innerHTML = minutes + ":" + "0" + seconds
    }
    if (seconds <= 0) {
        clearInterval(cutHandle);
        //another code to be executed
    }
}
var-cutHandle;
函数割(){
cutHandle=设置间隔(计时器,1000);
}
函数计时器(){
秒=秒-1;
var timer=document.getElementById(“timer1”);
timer.innerHTML=分钟+“:”+秒;
如果(秒<10){
timer.innerHTML=分钟+“:”+“0”+秒
}

如果(秒将间隔保存在变量中:

var myInterval= setInterval(function(){//your code here},1000);

//whenever you want to end the interval, call:
clearInterval(myInterval);
因此,cut()函数应更改为:

var myInterval;
function cut() {
    myInterval = setInterval(function() {timer()}, 1000);
}
function clear(){
    clearInterval(myInterval);
}

// the rest of your code:
function timer() {
    seconds = seconds - 1;
    document.getElementById("timer1").innerHTML = minutes + ":" + seconds;
    if (seconds < 10) {
        document.getElementById("timer1").innerHTML = minutes + ":" + "0" + seconds
    }
    if (seconds <= 0) {
       clear();

       //another code to be executed
    }
 }
var-myInterval;
函数割(){
myInterval=setInterval(函数(){timer()},1000);
}
函数clear(){
clearInterval(myInterval);
}
//代码的其余部分:
函数计时器(){
秒=秒-1;
document.getElementById(“timer1”).innerHTML=minutes+“:”+seconds;
如果(秒<10){
document.getElementById(“timer1”).innerHTML=minutes+“:“+”0“+秒
}

如果(秒将间隔保存在变量中:

var myInterval= setInterval(function(){//your code here},1000);

//whenever you want to end the interval, call:
clearInterval(myInterval);
因此,cut()函数应更改为:

var myInterval;
function cut() {
    myInterval = setInterval(function() {timer()}, 1000);
}
function clear(){
    clearInterval(myInterval);
}

// the rest of your code:
function timer() {
    seconds = seconds - 1;
    document.getElementById("timer1").innerHTML = minutes + ":" + seconds;
    if (seconds < 10) {
        document.getElementById("timer1").innerHTML = minutes + ":" + "0" + seconds
    }
    if (seconds <= 0) {
       clear();

       //another code to be executed
    }
 }
var-myInterval;
函数割(){
myInterval=setInterval(函数(){timer()},1000);
}
函数clear(){
clearInterval(myInterval);
}
//代码的其余部分:
函数计时器(){
秒=秒-1;
document.getElementById(“timer1”).innerHTML=minutes+“:”+seconds;
如果(秒<10){
document.getElementById(“timer1”).innerHTML=minutes+“:“+”0“+秒
}

如果(秒)将其放入变量中;
var myInterval=setInterval(…)
然后使用
clearInterval(myInterval);
停止它。您是否解决过此问题?将其放入变量中;
var myInterval=setInterval(…)
然后使用
clearInterval(myInterval)
停止它。你解决过这个问题吗?你能再次检查这个问题吗?更新以使其处于正确的状态。这样更好吗?嗯。问题是我需要调用cut onclickby cut()你的意思是单击时,你需要开始间隔吗?我有一个包含按钮的div,单击它时必须开始剪切()哪个开始间隔?你能再次检查这个问题吗?更新以使其处于正确的情况。这样更好吗?嗯。问题是我需要调用cut onclickby cut(),你的意思是单击时,你需要开始间隔?我有一个包含按钮的div,当它被单击时,它必须开始cut()如果你需要更多的帮助,发布一个完整的,这样我们就有一个更大的背景。如果你需要更多的帮助,发布一个完整的,这样我们就有一个更大的背景。