2013-08-02 37 views
1

有什么办法可以在NVD3的lineChart()的点击事件中恢复x轴值?点击恢复x轴值 - NVD3 LineChart

我得到的最接近的是这样的回答: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' 
    }); 
}); 

回答

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; 
    }); 
}); 

如果有人有更好的解决办法,请在这里回答。

3

我一直在使用下列内容:

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

e变量有你需要它里面的一切。只需设置一个断点并检查e var即可了解如何访问您想要的任何内容。

例子:

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

你有什么想法如何从对焦区域的细节?请你检查这个请求http://stackoverflow.com/questions/41138480/get-last-updated-brush-states-issue – Med