Вызов функции onClick на столбчатой диаграмме в Chart.js может быть довольно сложным, если столбец довольно маленький.Вот пример: ![enter image description here](https://i.stack.imgur.com/ZeBAn.jpg)
Серый столбец легко нажимается.Однако становится все труднее нажимать на столбцы, чем они меньше.
Вот данные конфигурации, которые я передаю, чтобы связать функцию onClick:
options: {
responsive: true,
legend: {
position: 'right',
onClick: function (event, elem) {
graph_click("graph_name", event,elem)
},
}
onClick: function (event, elem) {
graph_click("graph_name", event);
}
А вот graph_click
function
//canvases[graph] resolves to a Chart object
function graph_click(graph, event,elem) {
var activePoints = canvases[graph].getElementsAtEvent(event);
При щелчке непосредственно по панели getElementsAtEvent
возвращает объект.Однако при нажатии за пределами бара он возвращает ноль.Так как он не нашел столбец для извлечения данных.Есть ли альтернативный способ сделать это?
Также бонусный вопрос.Кажется, у вас не может быть и onClick
для легенды и столбцов.похоже, если у вас есть оба, только внешний onClick
когда-либо выполняется.