Alla ricerca di un metodo per aggiungere un handle onClick sull'elemento "label" in chartjs 2.0 Poiché l'utilizzo del metodo seguente restituirà "undifined" in console.log ogni volta che si fa clic su uno degli attributi dell'etichetta in Char.js V2.0 RadarChart .Come aggiungere eventi OnClick sulle etichette in Chart.js v2.0?
var data = {
// below line is the labels
labels: ["Eating", "Drinking", "Sleeping", "Designing", "Coding", "Cycling", "Running"],
datasets: [
{
label: "My First dataset", //this only shows as legend, not label.
backgroundColor: "rgba(179,181,198,0.2)",
borderColor: "rgba(179,181,198,1)",
pointBackgroundColor: "rgba(179,181,198,1)",
pointBorderColor: "#fff",
pointHoverBackgroundColor: "#fff",
pointHoverBorderColor: "rgba(179,181,198,1)",
data: [65, 59, 90, 81, 56, 55, 40]
},
....
//Below is how to OnClick on chart points in chart.js V2,
//However, it didn't apply to labels, will return "undifined" .
$('#ChartV2').click(function(e) {
var activePoints = myRadarChart.getElementsAtEvent(e);
var firstPoint = activePoints[0];
console.log(firstPoint);
if (firstPoint !== undefined){
alert(firstPoint._index);
}
});
Grande lezione con l'esempio nel violino. molto utile per le persone che hanno bisogno di estendere le funzionalità dalla versione originale di chart.js, considerando altre librerie di grafici, ho messo un riferimento qui dal confronto lib grafico fatto da http://www.fusioncharts.com/javascript-charting-comparison/ , dice "I grafici di chart.js sono disegnati usando Canvas e quindi non possono offrire alcuna interattività.", il tuo esempio estese la sua funzionalità e lo dimostrava come sbagliato. – BOBO