3

我在 Highcharts 中有一个饼图。单击饼图的一部分应加载与该数据系列关联的 URL。例如,如果有一个 25% 的切片带有一个 urlyahoo.com和一个 35% 的切片到google.com,那么点击 35% 的切片应该将用户带到google.com

这是我在系列中添加的内容:

// ...
point: {
    events: {
        click: function(e) {
            location.href = e.point.url;
            e.preventDefault();
        }
    }
}
// ...

data = [{
      y: 55.11,
      color: colors[0],
      url: 'www.google.com', 
      drilldown: {
         name: 'MSIE versions',
         categories: ['MSIE 6.0', 'MSIE 7.0', 'MSIE 8.0', 'MSIE 9.0'],
         data: [10.85, 7.35, 33.06, 2.81],
         url: 'www.google.com',
         color: colors[0]
      }
}, { .......many more dataset ...

我有一个如上所述的示例 JS fiddle,但它不起作用

在同一个示例中,有人建议url在系列中添加,但这会使所有切片都指向同一个 URL。

此示例类似但也不起作用

4

1 回答 1

2

调试破例后,问题是url传入图表的数据中没有包含 :

// add browser data
browserData.push({
    name: categories[i],
    y: data[i].y,
    color: data[i].color,

    // missing this line!
    url: data[i].url
 });

一旦完成,它就像文档描述的那样简单:

point: {
    events: {
        click: function(e) {
            location.href = this.options.url;
        }
    }
}
于 2013-07-27T00:38:55.823 回答