You can simply remove additionalClass from the previous item and then paste onto the item with a click:
events: { click: function (event) { let old_HL = document.querySelector('#container .highcharts-link.highcharts-point.additionalClass'); if (old_HL) old_HL.classList.remove('additionalClass'); event.target.classList.add('additionalClass'); } }
Jsfiddle
EDIT: option without DOM functions:
plotOptions: { series: { animation: false, dataLabels: { enabled: true, nodeFormat: "{point.name}mm" }, allowPointSelect: true,//you need this to allow selection colorByPoint: false, point: { events: { select: function(event) { if (typeof this.isNode !== 'undefined') return;//to disable selecting the root node this.custom_old_color = this.color;//save old color this.update({ color: 'red' }); }, unselect: function(event) { if (typeof this.isNode !== 'undefined') return; this.update({ color: this.custom_old_color//restore old color }); } } } }
Jsfiddle
source share