4

我想为我的系列中的每个数据点添加一个 url,当单击用户时将其重定向到该页面。例如jsfiddle

series:[{data: [ [123.12,'http://xyz.com'],[332.32,'http://zzs.com'] ] }]

我能够让这些点成为可点击的,但我实际上是如何让他们找到我正在点击的点以及使用哪个 url 我无法弄清楚。我显然可以通过使用存储链接的替代数组来破解它......但我想使用图表的意思。

现在它已经解决了以供将来参考,以便能够在此处添加指向您的点的链接是代码:

http://jsfiddle.net/awasM/2/

4

2 回答 2

11

这是执行此操作的一种方法(此处为小提琴):

                       series: [{
                            name: 'Batch',
                            URLs: ['www.google.com', null, null, 'www.yahoo.com', null, null, 'www.cnn.com', null, null, 'www.minecraft.net'], // pass in array of URLs
                            data: [4375.48, 113599.39, 1278, 83950.12, 6579.65, 94582, 1285.65, 48700.39, 500, 62917.27],
                            color:'#b8ecce',
                            point: {
                                events: {
                                    click: function() {
                                        var someURL = this.series.userOptions.URLs[this.x]; // onclick get the x index and use it to find the URL
                                        if (someURL)
                                            window.open('http://'+someURL);
                                    }
                                }
                            }
                       }],
于 2013-04-23T22:36:56.953 回答
5

您可以使用结构:

 data:[{
   y:10,
   ownURL:'http://www.google.com'
 },{
   y:11,
   ownURL:'http://www.google2.com'
 },{
   y:5,
   ownURL:'http://www.google3.com'
 }]

然后你有能力通过

this.point.options.ownURL
于 2013-04-24T08:33:48.183 回答