2014-01-27 34 views
1

所以我下面的代码:在不改变颜色,当计时器达到一个点

initialize: function() { 
    setInterval(function() { 
     min = parseInt($('#js-clock span').text()) - 1; 
     $('#js-clock span').text(min + 'm'); 
     $('.js-beacon-clock .fa-clock-o').addClass('text-success'); 
     if(min > 3 && min < 0){ 
      $('.js-beacon-clock .fa-clock-o').removeClass('text-success'); 
      $('.js-beacon-clock .fa-clock-o').addClass('text-error'); 
     }else if(min == 0){ 
      alert('OMG'); 
     } 
    }, 1000); 
} 

影响下面的HTML:

<div class="col-xs-8 text-large js-beacon-clock" id="js-clock"> 
    <i class="fa fa-clock-o"></i><span>30m</span> 
</div> 

计数下降,提示“OMG”到达时0,太棒了。但即使计时器达到2 ... 1(时钟应为红色),if (min > 3 && min < 0)也不会执行,而是保持绿色。

我甚至试着这样做:

initialize: function() { 
    setInterval(function() { 
     min = parseInt($('#js-clock span').text()) - 1; 
     $('#js-clock span').text(min + 'm'); 
     if(min < 2){ 
      $('.js-beacon-clock .fa-clock-o').addClass('text-success'); 
     else if(min > 3 && min < 0){ 
      $('.js-beacon-clock .fa-clock-o').removeClass('text-success'); 
      $('.js-beacon-clock .fa-clock-o').addClass('text-error'); 
     }else if(min == 0){ 
      alert('OMG'); 
     } 
    }, 1000); 

} 

但后来它永远不会变为绿色,它永远不会变成红色。事实上,现在,它的绿色却永远不会变红。

放置在控制台中:$('.js-beacon-clock .fa-clock-o').addClass('text-success');按预期工作。

发生了什么事?

回答

2

没有为min没有整数值,这将使这是真的:

(min > 3 && min < 0) 
+0

不帮我,你是什么意思,没有号码适合在这里? – LogicLooking

+0

最小值不能小于零并且大于3 –

+0

@LogicLooking又名:min如何可以大于3且小于零! – epascarello

相关问题