2017-03-16 44 views
0

取我有这样的代码下面,从一个API中的HTML跨度标签返回的更新值每秒:更改CSS从API

$(document).ready(function(){ 
    setInterval(function(){ 
     $.get('https://api.kraken.com/0/public/Ticker?pair=XXBTZEUR', function(data){ 
      var kraken_btc_eur = data.result.XXBTZEUR.c[0] 
      $("#kraken_btc_eur").text(kraken_btc_eur); 
     }); 
    }, 1000); 
}); 

我怎样才能改变<span id="kraken_btc_eur">的依赖的CSS关于变量var kraken_btc_eur的值是否从先前值变化。

我想我必须包括一个IF语句,创建一个新的变量来比较旧的更新,并清除变量,这将在下一秒执行,再加上不同的ID向上或向下。我不知道如何实现。

谢谢大家的指导。

回答

1

试着这么做:

$(function() { 
    var kraken_btc_eur_old = 0; 

    setInterval(function(){ 
     $.get('https://api.kraken.com/0/public/Ticker?pair=XXBTZEUR', function(data){ 
      var kraken_btc_eur = data.result.XXBTZEUR.c[0]; 
      if (kraken_btc_eur_old != kraken_btc_eur) { 
       // Change css 
      } 
      kraken_btc_eur_old = kraken_btc_eur; 
      $("#kraken_btc_eur").text(kraken_btc_eur); 
     }); 
    }, 1000); 

}); 
+0

谢谢我只是将'kraken_btc_eur_old!= kraken_btc_eur'更改为'kraken_btc_eur_old > kraken_btc_eur'与一个else语句。 – Antoine

1

目前比较新的...

喜欢的东西:

if(kraken_btc_eur !== $("#kraken_btc_eur").text()) { 
    // if different change background and add new text 
    $("#kraken_btc_eur").css('background', 'red').text(kraken_btc_eur); 
} 

这样,你只有在不同的更新,没有一点更新与事相同的值