【问题标题】:Multiple js progressbars on the same page?同一页面上有多个js进度条?
【发布时间】:2015-10-02 09:00:50
【问题描述】:

我正在使用progressbar.js 开发一个项目,我希望我的页面上有多个进度条。有一个动态数量,所以我提前不确定页面上会有多少进度条。

我的 JSFiddle 我只是简单地复制了代码并给第二个进度条一个 .progress2 类。理想情况下,我希望通过简单地给每个元素一个 .progress

来让进度条为每个元素工作

http://jsfiddle.net/8xa87k31/497/

var circle = new ProgressBar.Circle('.progress', {
    color: startColor,
    easing: 'linear',
    strokeWidth: 8,
    duration: 1500,
    text: {
        value: '0'
    }
});

显然我想我会先收集这些值并将它们放入一个数组中,但我什至无法让它工作。有人可以给我一个正确的方向,因为我不擅长 javascript。

如果有人能看一看并告诉我这是否可以按照我想要的方式完成,我将非常感激。

【问题讨论】:

    标签: javascript jquery arrays oop progress-bar


    【解决方案1】:

    晚上斯蒂芬,

    我想这就是你要找的东西:http://jsfiddle.net/8xa87k31/499/

    $('.progress').each(function() {
        var circle = new ProgressBar.Circle(this, {
            color: startColor,
            easing: 'linear',
            strokeWidth: 8,
            duration: 1500,
            text: {
                value: '0'
            }
        });
    
        var value = ($(this).attr('value') / 100);
    
        circle.animate(value, {
            from: {
                color: startColor
            },
            to: {
                color: endColor
            },
            step: function(state, circle, bar) {
                circle.path.setAttribute('stroke', state.color);
                console.log(circle);
                circle.setText((circle.value() * 100).toFixed(0));
            }
        });
    });
    

    看到了吗?没什么大不了! :-)

    注意:我相信,这可以改进。

    【讨论】:

    • 你是我的英雄 :) 如此简单,却如此有效。
    • 不客气,下次不会卡住了,这才是最重要的! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 2020-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-12
    相关资源
    最近更新 更多