使用jquery在nvd3中触发图例点击事件?

问题描述:

我使用nvd3作为多条形图表,并且我希望在用户单击页面上的其他html时重绘图表。我试图使用jQuery选择在nvd3主页(http://nvd3.org/)的“Stream0”传说圈,双击它,在控制台中使用这个片段:使用jquery在nvd3中触发图例点击事件?

$($('g.nv-series')[0]).click() 

对于希望将立即人们更了解显而易见的原因JavaScript,没有任何反应。这与事件授权有关吗?

http://nvd3.org/

+1

[This question](http://*.com/questions/9063383/how-to-invoke -click-event-programmaticaly-in-d3)应该有所帮助。 –

你可以试试这个:

chart.legend.dispatch.legendClick = function(d, i){ 
//redraw 
}; 

将自己的方法追加到传奇;它适用于饼图不确定是否适用于折线图;

+1

此代码在用户单击图例时运行,但尚不清楚它如何触发单击事件。 – axiomx11

也许这里有一些帮助。两个图表,一个馅饼,一个堆叠,但只显示饼图的传说。 数据不相同,但传说是.. 想单击饼图传说更新。

 chart.legend.dispatch.on('stateChange.pie', function(d,i){ 
      setTimeout(function() { 
       stackedAreaChart.dispatch.changeState(d,i); 
       stackedAreaChart.update(); 
      }, 100); 
     }); 

注意:使用“.pie”将延长(库)stateChange事件(未覆盖它) 另一图表stackedAreaChart必须处于范围。 请注意有一个changeState事件和一个stateChange,最好是看un-minified的nvd3 js文件..