clearInterval()无法使用javascript

clearInterval()无法使用javascript,javascript,Javascript,我有以下代码。这是我试图清除的间隔,但它不起作用。请帮帮我 $(document).ready(function(){ var intervalId; $(window).focus(function(){ var intervalId = setInterval(function(){ console.log('working'); }, 5000); }); $(window).blur(functio

我有以下代码。这是我试图清除的间隔,但它不起作用。请帮帮我

$(document).ready(function(){
    var intervalId;
    $(window).focus(function(){
        var intervalId = setInterval(function(){
            console.log('working');
        }, 5000);
    });

    $(window).blur(function(){
        clearInterval(intervalId);
    });
});

不要重新声明
intervalId
,否则它将成为
焦点
函数的本地作用域:

$(window).focus(function() {
    intervalId = setInterval(function() {
        console.log('working');
    }, 5000);
});
考虑这一部分:

$(document).ready(function() {
    var intervalId;
    $(window).focus(function() {
        // intervalId is not the same as the `window.intervalId`
        // The scope changes.
        var intervalId = setInterval(function() {
//------^^^---------- Remove this var.
        });
    });
});

@Nahueliani这个问题没问题,伙计。完全正确。“这有什么不对吗?”PraveenKumar看一下对它所做的更改。这只是一段代码。即使代码是正确的,“不工作”,但没有明确说明为什么不工作或需要什么预期/当前行为。@AhsanKhan我通过添加一些文本更新了您的问题。希望这对你有好处,后续问题请遵循同样的原则<代码>:)@AhsanKhan只需在前面添加
intervalId=
。@AhsanKhan您能创建一个小提琴并作为一个新问题进行解释吗?对每个人都好吗?@parveen kumar