简体   繁体   English

clearInterval对我不起作用

[英]clearInterval doesn't work for me

var waveTimes = 0;
var detectInterval = setInterval(function(){
    if(parseInt($(".people").css("top")) > 420){
        var waveInterval = setInterval(peopleWave,300);
        clearInterval(detectInterval);
    }
},300);
function peopleWave(){
    waveTimes += 1;
    if(waveTimes == 6){
        clearInterval(waveInterval);
    }
    var pic1 = "images/index/wave1.png";
    var pic2 = "images/index/wave2.png";
    if($(".wave img").attr("src") == pic1){
        $(".wave img").attr("src",pic2);
    } else {
        $(".wave img").attr("src",pic1);
    }
}

it says waveInterval not found after peopleWave runs 6 times, how can I solve it? 它说在peopleWave运行6次后找不到waveInterval,我该如何解决?

Define waveInterval outside your anonymous function, so that peopleWave has access to it: 在匿名函数之外定义waveInterval ,以便peopleWave可以访问它:

var waveTimes = 0,
    waveInterval;
...
waveInterval = setTimeout(peopleWave, 300);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM