2015-11-01 95 views
4

我有一個倒計時運行,並點擊按鈕,我想停止倒計時。但它不工作。 這是我的代碼如何停止在jquery中運行倒計時?

$(document).ready(function(){ 
var settimmer =1000; 
var $dash_url="<?php echo DASH_URL;?>"; 
$(function(){ 
      var $interval=setInterval(function() { 
       var timeCounter = settimmer; 
       var updateTime = eval(timeCounter)- eval(1); 
       if(updateTime => 0){ 
        settimmer=updateTime; 
        $('.redirect').css({"color":"#FFF"}); 
        $(".redirect").html('Redirecting You in '+settimmer+' Second'); 
       } 
       if(updateTime <= 0){ 
        clearInterval($interval); 
        window.location.replace($dash_url); 
        return false; 
       } 
      },1000); 

    }); 
    $('.stop_timer').click(function(){ 
     clearInterval($interval); 
    }); 

});

+0

我看到的第一個問題是,當你處理stop_timer點擊時,你的$ interval變量超出了範圍。 – MikeWu

回答

2

這會將您的$ interval變量放在正確的範圍內。

$(document).ready(function(){ 
var settimmer =1000; 
var $dash_url="<?php echo DASH_URL;?>"; 
$(function(){ 
      var $interval=setInterval(function() { 
       var timeCounter = settimmer; 
       var updateTime = eval(timeCounter)- eval(1); 
       if(updateTime => 0){ 
        settimmer=updateTime; 
        $('.redirect').css({"color":"#FFF"}); 
        $(".redirect").html('Redirecting You in '+settimmer+' Second'); 
       } 
       if(updateTime <= 0){ 
        clearInterval($interval); 
        window.location.replace($dash_url); 
        return false; 
       } 
      },1000); 
      $('.stop_timer').click(function(){ 
       clearInterval($interval); 
      }); 
    }); 
}); 
+0

謝謝先生。它的工作。 –