【发布时间】:2014-03-31 08:08:28
【问题描述】:
我正在将 nvd3.js 与 line and line-with-focus charts 一起用于一个项目。需要将数据和事件绑定到 xAxis 刻度元素。我一直在徒劳地尝试通过控制台手动将事件绑定到一行。
// try to bind to the first xAxis <line> in my line-with-focus chart
d3.select( 'div#problem-chart .nv-focus .nv-x .tick line' )
.on( 'mouseover', function( e ){
console.log( e );
} )
我什至设置了chart.interactive( false ) 以确保没有捕获事件并杀死它们的交互层。有没有人设法将事件绑定到 xAxis 或猜测为什么上述方法不起作用?
【问题讨论】:
-
你检查过你是否真的选择了一些东西吗?看起来您的选择器应该类似于
div#problem-chart > .nv-focus > .nv-x > .tick > line。 -
@LarsKotthoff:是的,我查过了。它实际上是在选择一些东西
-
@LarsKotthoff:似乎
g.nv-linesWrap的子元素正在捕获事件,而这些事件并未渗透到g.nv-focus子元素。呃 -
嗯,我想你可以选择这些元素并在它们上设置
pointer-events: none。
标签: javascript d3.js nvd3.js