我无法让 onClick 侦听器与 dc.barChart 一起使用。根据这个线程,可点击图表现在应该有一个 onClick 监听器。但是,我尝试过 chart.onClick = function 和 chart.on("click", function) 都没有任何运气。下面是我试图测试侦听器是否正常工作的代码。
var hubChart = dc.barChart("#hub-chart");
var dateHub = dateCF.dimension(function(d){ return d.hub;}),
dateHubs = dateHub.group().reduceSum(function(d){
return d.total;
});
var minHub = dateHub.bottom(1)[0].hub;
var maxHub = dateHub.top(1)[0].hub;
hubChart.width(0.40 * window.innerWidth)
.height(350)
.dimension(dateHub)
.group(dateHubs)
.x(d3.scale.linear().domain([minHub, maxHub]))
.elasticY(true)
.elasticX(true)
.brushOn(false);
hubChart.on("preRedraw", function (chart) {
chart.rescale();
});
hubChart.on("preRender", function (chart) {
chart.rescale();
});
hubChart.onClick = function(chart){
console.log(true);
}
hubChart.on("click", function (chart) {
console.log(true);
});
hubChart.render();
Run Code Online (Sandbox Code Playgroud)
每当单击图表时,这应该会导致 true 打印到控制台,但什么也没有发生。