javascript - Chart.js图表​​onclick禁用图例onclick

标签 javascript chart.js chart.js2

我刚刚在条形图中添加了一个图表 onclick 函数,它允许我根据单击的条形来采取操作 - 效果很好 - 但是(你知道有一个但是)它禁用了正常的图例 onclick 功能。 我怎样才能同时拥有 onclick 功能?

我猜测这可能类似于从图表 onclick 函数调用图例 onclick 回调函数,但详细信息超出了我目前的知识范围。

我已经了解了这一点,但不确定调用默认处理程序的参数应该是什么。

var defaultLegendClickHandler = Chart.defaults.global.legend.onClick;

function YrChartClick(event, YCarray)
  {
    if (typeof YCarray[0] === "undefined")  //click not on a bar, might be legend
    defaultLegendClickHandler(event, 1);  // parameters?? correct function?
else
{
//clicked on a bar - this works
    $('#month').val(YCarray[0]._index+1);  
    MonChange();
}
}

使用最新版本的chart.js 2.7.1

最佳答案

尝试这样:

var legendClick = Chart.defaults.global.legend.onClick;
Chart.defaults.global.legend.onClick = function(e, legendItem) {
    console.log(legendItem);
    legendClick.call(this, e, legendItem);
};

legendItem 包含被单击的栏的索引。

legendClick.call(this, e, legendItem) 执行默认的点击处理程序。

关于javascript - Chart.js图表​​onclick禁用图例onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47721845/

相关文章:

javascript - 分组条形图,在 chart.js 中

javascript - 在 Chart.js v 2.7.1 中的条形图顶部显示数据

javascript - Chart JS 圆环图饼图悬停偏移

javascript - ajax 没有被调用..甚至警报也不起作用

php - 使用此 Facebook 风格 Lightbox - 请求 AJAX - 在页面上覆盖多个按钮

javascript - 动态 setState 在 react 中添加新的动态属性

javascript - '/' 用 url 中的 %252F 替换,同时以 Angular 重新加载 $state

javascript - 使用 PHP ajax 调用后执行 Chartjs

javascript - 在折线图中显示信息的搜索框

javascript - Chartjs 2.0 - 增加 x 轴标签的高度