无法获取c3.js右键单击事件参数

问题描述

我想控制c3.js图上的右键单击事件。
我找到了解决方法Right mouse click detection on SVG shape in JavaScript not working
但我无法获取数据和索引参数。
有什么解决办法吗?

我使用的库如下。
c3.js v0.7.18
d3.js v5.16.0
我也使用firebase js插件。

onrendered: function () {
  d3.select("#chart1")
    .selectAll(".c3-event-rect")
    .on("contextmenu",function (d,i) {
      console.log(d); //argument d is always undefined.
      console.log(i); //argument i is always 0.
      d3.event.preventDefault(); // prevent default menu
      var vals = Chart1.data().map(function (series) {
        var name = series.id;
        return { name: name };
        //value: Chart1.data.values(name)[d.x]}; // d.x is the index
      });
    alert ("data: "+JSON.stringify(vals));
})

解决方法

是的,这是您引用的我的解决方案,但不幸的是,看起来他们已经更新了c3,所以现在每个图表(而不是每个x轴点)只有一个.c3-event-rect,因此没有d和i信息

您最好的希望是向c3 github存储库添加功能请求,以请求特定的右键单击侦听器

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...