【问题标题】:Recovering x-axis value on click - NVD3 LineChart单击时恢复 x 轴值 - NVD3 LineChart
【发布时间】:2013-08-02 14:12:06
【问题描述】:

有什么方法可以恢复NVD3的lineChart()中点击事件的x轴值吗?

我得到的最接近的答案是:nvd3.js : unable to bind onClick event with the data points in the svg

但我想要的是恢复 x 轴值并重定向到另一个页面,将其作为参数传递。

我也尝试过这种方法,类似于我在 multiBarChart 上使用的方法,但不成功:

$("g.nv-point-paths").on("hover", function (d) {
    $("path").off("click");
    $("path").on("click", function (d) {
        //do something with 'd'
    });
});

【问题讨论】:

    标签: javascript jquery d3.js nvd3.js


    【解决方案1】:

    我一直在使用以下:

    chart.lines.dispatch.on('elementClick', function(e) { ... }
    

    e 变量包含您需要的所有内容。只需设置一个断点并检查 e var 以查看如何访问您想要的任何内容。

    例子:

    chart.lines.dispatch.on('elementClick', function(e) {
    alert(e.point.label);
    }
    

    【讨论】:

    【解决方案2】:

    我自己通过调试页面的javascript发现的:

    $("g.nv-point-paths").on("hover", function (d) {
        $("g.nv-point-paths path").off("click");
        $("g.nv-point-paths path").on("click", function (d) {
            var xAxisValue = d.currentTarget.__data__.data.point[4].x;
        });
    });
    

    如果有人对此有更好的解决方案,请在此处回答。

    【讨论】:

      猜你喜欢
      • 2013-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-17
      • 1970-01-01
      相关资源
      最近更新 更多