Always Visible Tooltip | Highcharts @ A Humble Opinion
http://stackoverflow.com/questions/12313935/never-want-to-hide-tooltip-on-highcharts/12315846#comment16529080_12315846
Jugal Thakkar
http://jugal.me/
by Muhammad Mushtaq Sheikh
HTML
<script src="https://code.highcharts.com/highcharts.src.js"></script>
<div id="container"></div>
CSS
#container {
min-width: 500px;
}
JavaScript
(function(H) {
H.wrap(H.Tooltip.prototype, 'hide', function(defaultCallback) {
//alert();
//if ( /* .. */ ) {
////Do Nothing (Do Not Hide)
//} else { // Call the default Hide Callback
//defaultCallback.apply(this);
//}
});
H.wrap(H.Tooltip.prototype, 'click', function(defaultCallback) {
alert('click');
});
//Highcharts.wrap(Highcharts.Tooltip.prototype, 'refresh', function(proceed, point, event, click) {
// if (click) {
// proceed.apply(this, Array.prototype.slice.call(arguments, 1));
// }
//});
}(Highcharts));
var openTooltips = [];
var tooltipEnabled = true
var chart = $('#container').highcharts({
title: {
text: 'Monthly Average Temperature'
},
events: {
load: function() {}
},
plotOptions: {
series: {
stickyTracking: false,
point: {
events: {
mouseOver: function() {
//debugger;
//console.log(this);
//if(this.series.tooltipOptions.enabled){
if (openTooltips.indexOf(this) > -1) {
this.series.chart.update({
tooltip: {
enabled: false
}
});
openTooltips = [];
} else {
openTooltips = [];
//chart.series[0].data[1].setState('hover');
//chart.tooltip.refresh(this);
openTooltips.push(this);
this.series.chart.update({
tooltip: {
enabled: true
}
});
}
chart.tooltip.refresh(this);
// chart.tooltip.hide();
//this.series.chart.tooltip.options.enabled =false;
//this.series.chart.update({
// tooltip: {
// enabled: tooltipEnabled
// }
// });
// tooltipEnabled = tooltipEnabled ? false : true;
// if (!this.series.chart.tooltip.isHidden)
//...