setInterval只是不会停止使用clearInterval

时间:2012-04-23 02:02:53

标签: javascript setinterval

我想尝试一个简单的游戏并暂停一个照片滑块,但setInterval对我不起作用,任何人都可以看到我做错了什么

我希望它在我点击暂停时停止。

$('.control').click(function() {
    var data = $(this).attr('data-id');
    var interval;

    switch (data){
        case 'play':
            console.log('play');
            interval = setInterval(slide, 2000);
            break;
        case 'pause':
            console.log('pause');
            clearInterval(interval)
            break;
        default : console.log('nothing');
    }

1 个答案:

答案 0 :(得分:2)

您的interval变量在函数内声明,并在函数退出时消失。下次调用该函数时,它没有值,因此传递了clearInterval undefined。在函数外部声明interval,它应该可以工作。