如何获取Highcharts中某个点的索引才能在事件中使用?

时间:2016-01-05 12:01:43

标签: javascript highcharts

在Highcharts图表中,我想知道点击它时点的索引。 以下代码(here jfiddle版本)不起作用:

$(function () {
    $('#container').highcharts({
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },

        plotOptions: {
            series: {
                cursor: 'pointer',
                point: {
                    events: {
                        click: function () {
                            alert('Category: ' + this.category + ', value: ' + this.y+ ', index: ' + this.indexOf);
                        }
                    }
                }
            }
        },

        series: [{
            data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
        }]
    });
});

Elsewhere建议使用indeOf,就像我一样,但它似乎只适用于格式化工具提示部分。怎么了?

1 个答案:

答案 0 :(得分:1)

您需要使用index,这是Highcharts在Point对象上公开的属性,而不是indexOf

... ', index: ' + this.index );

indexOf是一个可以在数组上调用的函数。在这里你有一个单独的点对象,而不是一个数组。 (请注意indexOf如何在您已链接到的问题中作为函数调用。

Modified JSFiddle