2017-02-16 8 views
-1

タイミング機能を作成したい場合は、カウントダウンを表示できます。私はそれをこのようにした。時間が終わったときclearInterval(timing)clearInterval関数の外から

しかし、私はカウントダウンとclearInterval(timing)の機能を中断したいと思っていました。

var timing = function(x,callback) { 
     var seconds = x; 
     var second = 1; 
     var timing; 

     $("#timing h1").text(seconds); 
     $("#timing").show(); 
     timing = setInterval(function() { 
      $("#timing h1").text(seconds - second); 
      if (second >= (seconds - second)) { 
       clearInterval(timing); 
       $("#timing").hide(); 
       callback(); 
      } 
      seconds--; 
     }, 1000); 
    } 

答えて

1

_timing(名前が変更された)変数をグローバルにする必要があります。したがって、次のコードが動作するはずです:

var timing = function(x, callback) { 
    var seconds = x; 
    var second = 1; 
    $("#timing h1").text(seconds); 
    $("#timing").show(); 
    _timing = setInterval(function() { 
     $("#timing h1").text(seconds - second); 
     if (second >= (seconds - second)) { 
      clearInterval(_timing); 
      $("#timing").hide(); 
      callback(); 
     } 
     seconds--; 
    }, 1000); 
} 
関連する問題