微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决无法获取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存储库添加功能请求,以请求特定的右键单击侦听器

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。