【发布时间】:2014-07-01 11:30:52
【问题描述】:
我应该显示一个动画计数器。理想情况下,应该有一个数字变化的连续动画。情况如下所示:
- 我每分钟都有一个新的价值。
- 计数器应该显示真实值(不是假的)。
- 有时价值没有变化。
- 有时计数器旋转得更快,有时更慢(取决于值的变化)。
我的想法是使用最后两个值并在它们之间设置动画。根据差异,速度必须改变。但我没有找到一个允许事后改变速度的计数器。还是你有别的想法?
所有其他有柜台的网站是怎么做的?他们是假的吗?
编辑:
我尝试了不同的计数器 - 目前我正在使用 jOdometer。我目前的代码库是:
var counter = $('.counter').jOdometer({
counterStart: '0',
numbersImage: '/img/jodometer-numbers-24pt.png',
widthNumber: 32,
heightNumber: 54,
spaceNumbers: 0,
offsetRight:-10,
speed:10000,
delayTime: 300,
maxDigits: 10,
});
function update_odometer() {
var jqxhr = $.getJSON("/number.php?jsonp=?")
.done(function(data){
console.log(data);
total = data['Total'];
counter.goToNumber(total);
})
.fail(function(data){
console.log(data);
});
};
update_odometer();
setInterval(update_odometer, 60000);
计数器当前从零计数到我的数字,但我想改变这种行为(从倒数第二个计数到最后一个值 - 但我的 AJAX 调用 [see here] 有问题)。如果需要,我也可以更改库。我查看了 jquery.jodometer.js,也许我可以创建一个动态更改 speed 的函数。
但是我没有附上代码的原因是我搜索了代码背后的编程过程。有可能得到这样的现场柜台吗?流程是怎样的?
解决方案:
设置速度解决了问题,因为库为我做动画:
speed:60000
您只需将动画的速度与更新间隔相匹配。
【问题讨论】:
-
我不是投反对票的人。但是你说的这个计数器是什么?请添加一些代码或图像来显示应该做什么。
-
不是downvoter,但你没有包含任何代码,也没有任何可行的例子。
-
感谢您的回复。我添加了一些代码。不知道一个工作示例是否会有所帮助。我无法访问实时数据。我只能用两个样本值创建一个示例。你需要那个吗?
标签: javascript jquery animation counter