将从API检索的新值与先前值进行比较

时间:2014-01-06 11:52:28

标签: javascript jquery api

我正在寻找一种解决方案,将从API调用中检索到的新值与先前检索的值进行比较。然后使用CSS我将设置值的动画以通知使用更改,当前每次轮询时值都会动画,无论值是相同还是不同。

我目前在jQuery中的解决方案如下所示。有一段代码here。我已经使代码尽可能基本,而不是轮询API,它只是轮询一个随机数。

function poll(){
    var data = Math.floor(Math.random() * 3) + 1;
    $("#example").addClass('animate');
    setTimeout(function(){
      $("#example").removeClass('animate');
    }, 2000);

    $("#example").html(data);
  };

  setInterval(poll, 3000);

1 个答案:

答案 0 :(得分:1)

我认为您可能希望将该代码包装在匿名函数中,以便您可以在不污染全局范围的情况下挂起旧值。所以这样的事情可能有用:

(function (){

var old = null;

function poll() {
  var data = Math.floor(Math.random() * 3) + 1;

  // compare data with old here
  if( data != old) {
    $("#example").addClass('animate');
    setTimeout(function(){
      $("#example").removeClass('animate');
    }, 2000);
  }

  $("#example").html(data);
  old = data;
};
setInterval(poll, 3000);

})();
相关问题