Devo modificare l'evento di clic sugli elementi delle legende dei grafici ad alta risoluzione. Demo Highcharts http://www.highcharts.com/demo/line-basic. Voglio ad esempio: la prima azione sarà un po 'di allerta e la seconda azione sarà un'azione di default (pulire la linea di Tokyo dalla tabella). Grazie. Scusa se la domanda non è pulita.Come modificare l'evento click item della legenda di highcharts?
risposta
Devi usare il legendItemClick
callback come il seguente codice
plotOptions: {
line: {
events: {
legendItemClick: function() {
alert('I am an alert');
//return false;
// <== returning false will cancel the default action
}
}
,
showInLegend: true
}
}
Ecco working fiddle che mostra di avviso quando si fa clic su leggende come su Tokyo e poi nascondere la linea di Tokyo.
Vedere anche lo plotOptions documentation per l'evento in questione. Dove è necessario posizionarlo può variare a seconda del tipo di grafico che si sta utilizzando.
Per me, la leggendaItemClick doveva essere per la serie, non per la linea. Ad esempio:
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;
}
}
}
}
},
Esempio da Highcharts: http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/plotoptions/series-events-legenditemclick/
Vero. Sembra funzionare solo in questo modo! – TrtG
Highcharts hanno una grande documentazione con esempi jsfiddle, sono sicuro che u si sta cercando è lì: http://www.highcharts.com/ ref/ –
il collegamento aggiornato come sopra non è più funzionante. http://api.highcharts.com/highcharts#plotOptions.column.events.legendItemClick –