Javascript jquery计数器不是从0开始到目标编号
正在尝试创建从0开始并上升到目标值的计数器。我试图使用setInterval,但它不起作用,因为我没有太清楚的概念,我参考了某些教程,但仍然无法使用我的代码。如果有人能帮我修改我的代码,那对我来说是件好事。 先谢谢你Javascript jquery计数器不是从0开始到目标编号,javascript,jquery,for-loop,counter,setinterval,Javascript,Jquery,For Loop,Counter,Setinterval,正在尝试创建从0开始并上升到目标值的计数器。我试图使用setInterval,但它不起作用,因为我没有太清楚的概念,我参考了某些教程,但仍然无法使用我的代码。如果有人能帮我修改我的代码,那对我来说是件好事。 先谢谢你 $(document).ready(function() { $('.tts-counter .tts-counter-item .tts-number').each(function() { var counterValue = $(this).data(
$(document).ready(function() {
$('.tts-counter .tts-counter-item .tts-number').each(function() {
var counterValue = $(this).data('counter');
var finalValue = 0;
for (var i = 0; i <= counterValue; i++) {
$(this).text(finalValue);
finalValue++;
}
});
});
在检查和参考了许多有关计数器的文章后,我发现了这个解决方案
$('.tts-number').each(function() {
$(this).prop('Counter', 0).animate({
Counter: $(this).text()
}, {
duration: 4000,
easing: 'swing',
step: function(now) {
$(this).text(Math.ceil(now));
}
});
});
问题在哪里?此代码应显示最大的数字。更改之间没有间隔,因此所有更改都会立即完成。我希望它从0开始到目标值。但它直接向我展示了目标价值。当然,请再次仔细阅读我的评论。脚本应该如何知道是否要在100ms或2分钟内更改该值?使用setInterval。您的循环完全按照您的要求执行,每一步之间的间隔几乎为零。好的,我会尝试一下,谢谢。我应该在循环中添加setInterval吗?打开任何JS教程,找到setTimeout并思考一下。我在这里的最后一点评论。