J'ai besoin de modifier l'événement de clic sur les éléments de légende de Highcharts. Démonstration Highcharts http://www.highcharts.com/demo/line-basic . Je veux par exemple que la première action soit une alerte et que la deuxième action soit une action par défaut (nettoyer la ligne Tokyo du graphique). Merci. Désolé si la question n'est pas claire.
Réponses
Trop de publicités?Vous devez utiliser le legendItemClick
comme le code suivant
plotOptions: {
line: {
events: {
legendItemClick: function () {
alert('I am an alert');
//return false;
// <== returning false will cancel the default action
}
}
,
showInLegend: true
}
}
Voici violon de travail qui affiche une alerte lorsque vous cliquez sur des légendes comme sur Tokyo, puis cache la ligne Tokyo.
Consultez la doc plotOptions ici http://www.highcharts.com/ref/#plotOptions-line-events--legendItemClick
Pour moi, l'événement legendItemClick devait concerner la série, et non la ligne. Par exemple :
plotOptions: {
series: {
events: {
legendItemClick: function(event) {
var visibility = this.visible ? 'visible' : 'hidden';
if (!confirm('The series is currently '+
visibility +'. Do you want to change that?')) {
return false;
}
}
}
}
},
Exemple tiré de Highcharts : http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/plotoptions/series-events-legenditemclick/