用jQuery动画一个数字

时间:2013-04-26 07:42:49

标签: javascript jquery

我正在创建一个简单的游戏,我需要为收集的点设置动画。

目前我所做的是:

if (selectedWord == item)
{
    gamePoints = gamePoints+5;
    $(".gameSpanStarImage").html(gamePoints);
}

您能告诉我如何在号码上创建动画效果吗?我知道我需要使用某种类型的动画:

<div id="button">Click me</div><br>

<div id="container">Faded in</div>

<script>
  $("#container").hide();

  $("#button").click(function() {$("#container").fadeIn()});
</script>

但不应该在点击时发生,而是在得分发生变化时发生。

3 个答案:

答案 0 :(得分:0)

使用fadeIn() ...您需要hide()元素才能将其淡化。 试试这个

 if (selectedWord == item)
{
  gamePoints = gamePoints+5;
  $(".gameSpanStarImage").hide().html(gamePoints).fadeIn('slow');
}

答案 1 :(得分:0)

你可以试试这个:

if (selectedWord == item) {
    $({number:gamePoints}).animate({number:gamePoints+5}, {step:function(now,fx){
        $(".gameSpanStarImage").html(parseInt(now));
    }})
}

答案 2 :(得分:0)

这是一个非常简单的数字计数器:

$.fn.animatedCounter = function(from, to, speed) {
  var self = this;

  function setText(text) {
    return function(){ self.text(text); };
  }

  for (var i=from; i<=to; i++) {
    setTimeout(setText(i), i*(speed/to));
  }
};

$('div').animatedCounter(1,100,5000); // Count from 1 to 100 in 5 seconds

演示: http://jsbin.com/ocowab/1/edit