javascript - Chart.js onAnimationComplete 不起作用

标签 javascript jquery html chart.js

我想写圆环图的文本中心。我在下面写了这段代码

<script>

    $(document).ready(function () {
        var data = {
            labels: [
                ""

            ],
            datasets: [
                {
                    data: [165],
                    backgroundColor: [
                        "#FF6384"

                    ],
                    hoverBackgroundColor: [
                        "#FF6384"

                    ]
                }]
        };
        var ctx = $('#chart-area').get(0).getContext("2d");
        var myDoughnutChart = new Chart(ctx, {
            type: 'doughnut',
            data: data,
            animation: true,
            responsive: true,
            showTooltips: false,
            percentageInnerCutout: 70,
            segmentShowStroke: false,
            onAnimationComplete: function () {

                var canvasWidthvar = $('#chart-area').width();
                var canvasHeight = $('#chart-area').height();
                var constant = 114;
                var fontsize = (canvasHeight / constant).toFixed(2);
                //ctx.font="2.8em Verdana";
                ctx.font = fontsize + "em Verdana";
                ctx.textBaseline = "middle";
                var total = 0;
                $.each(data, function () {
                    total += parseInt(this.value, 10);
                });
                var tpercentage = ((data[0].value / total) * 100).toFixed(2) + "%";
                console.log(total);
                var textWidth = ctx.measureText(tpercentage).width;

                var txtPosx = Math.round((canvasWidthvar - textWidth) / 2);
                ctx.fillText(tpercentage, txtPosx, canvasHeight / 2);
            }
        });
    });

我想在动画完成并使用 onAnimationComplete 函数后执行此操作,但 onAnimationComplete 函数在这里不起作用。

最佳答案

遇到同样的问题。 在 options.animation 中改用 onComplete():

options:{
    animation:{
        onComplete : function(){
            /*Your code here*/
        }
    }
}

关于javascript - Chart.js onAnimationComplete 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39890851/

相关文章:

javascript - 砌体布局中的中心单列

jQuery 动态 Canvas 创建,$ctx.getContext 不是函数

javascript - 值没有添加到数组中?

javascript - 是否应该渲染 javascript 文件以适应服务器 url 的变化?

javascript - Ember-Template-Lint 如何修复 hbs 文件中的 block 缩进错误?

javascript - jQuery 对 return !1 或 return !0 的用法

javascript - 像在 photoshop 中一样使用可拖动的 handle 倾斜图像

javascript - jQuery - 将两个事件绑定(bind)到 AND 运算符

javascript - js 样式不起作用

jquery - 使用 jQuery 从标签中获取文本