1

有没有办法恢复lineChart()NVD3 中点击事件的 x 轴值?

我得到的最接近的答案是:nvd3.js:无法将 onClick 事件与 svg 中的数据点绑定

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

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

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

2 回答 2

3

我一直在使用以下内容:

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

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

例子:

chart.lines.dispatch.on('elementClick', function(e) {
alert(e.point.label);
}
于 2014-03-14T15:38:06.740 回答
0

我通过调试页面的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-08-02T14:31:35.653 回答