Javascript 如何在Highcharts中单击更改一点颜色
我试图改变散点图点的颜色,一次一个。我有下面的代码可以使用,但我不知道当你点击第二个点时如何更改颜色 例如,我希望它能够工作,因此,如果默认情况下所有的点都是黄色的,并且您单击点A,则点A单独变为黑色。然后单击点B时,点B变为黑色,点A变回黄色Javascript 如何在Highcharts中单击更改一点颜色,javascript,highcharts,Javascript,Highcharts,我试图改变散点图点的颜色,一次一个。我有下面的代码可以使用,但我不知道当你点击第二个点时如何更改颜色 例如,我希望它能够工作,因此,如果默认情况下所有的点都是黄色的,并且您单击点A,则点A单独变为黑色。然后单击点B时,点B变为黑色,点A变回黄色 plotOptions: { series: { point: { events: { click: function() { var
plotOptions: {
series: {
point: {
events: {
click: function() {
var thisPoint = this.options;
thisPoint.color = 'black';
this.update(thisPoint, true);
}
}
}
}
},
您可以存储一个包含上次单击点的变量,例如(在外部范围中): 然后在单击事件中:
plotOptions: {
series: {
point: {
events: {
click: function() {
// If we have a previous point, reset its color
if(previousPoint)
previousPoint.update({color: previousPoint.originalColor});
// Set this points color to black
this.update({color: 'black', originalColor: this.color});
// Make it our previous point
previousPoint = this;
}
}
}
}
}
看看它在用什么
如果您不想用额外的变量(originalColor)将点弄乱,您还可以在外部范围中放置一个previousColor
,以及previousPoint
plotOptions: {
series: {
point: {
events: {
click: function() {
// If we have a previous point, reset its color
if(previousPoint)
previousPoint.update({color: previousPoint.originalColor});
// Set this points color to black
this.update({color: 'black', originalColor: this.color});
// Make it our previous point
previousPoint = this;
}
}
}
}
}