Javascript jquery计数器不是从0开始到目标编号

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(

正在尝试创建从0开始并上升到目标值的计数器。我试图使用setInterval,但它不起作用,因为我没有太清楚的概念,我参考了某些教程,但仍然无法使用我的代码。如果有人能帮我修改我的代码,那对我来说是件好事。 先谢谢你

$(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并思考一下。我在这里的最后一点评论。