如何向Highcharts对象添加事件侦听器*AFTER*我已创建它

Kai*_*uli 13 highcharts

我正在尝试在创建后为高图对象添加事件监听器.我可以在声明中添加一个.当我尝试使用chrome控制台来解决附加监听器帖子声明的位置时我不能.

NT3*_*3RP 35

如果要在创建图表后添加事件侦听器,则文档提供了有关扩展highcharts的一些见解:

可以通过框架事件绑定将事件添加到实例.如果你的框架是jQuery,你可以运行$(chart).bind('load', someFunction);

在"连接到Chart.init"部分(在同一页面上)甚至还提到了在图表渲染后如何绑定事件,但它是一种更具侵入性的解决方案.我已经修改了下面的代码示例并进行了一些修改:

// General, global event listener
var globalCallback = function (chart) {

    // Specific event listener
    Highcharts.addEvent(chart.container, 'click', function (e) {
        e = chart.pointer.normalize();
        console.log('Clicked chart at ' + e.chartX + ', ' + e.chartY );
    ?});

    // Specific event listener
    Highcharts.addEvent(chart.xAxis[0], 'afterSetExtremes', function (e) {
        console.log('Set extremes to ' + e.min + ', ' + e.max);
    });
}

// Add `globalCallback` to the list of highcharts callbacks
Highcharts.Chart.prototype.callbacks.push(globalCallback);
Run Code Online (Sandbox Code Playgroud)

您还可以查看他们的示例JSFiddle以了解此方案.

  • 谢谢!别人可以投票给这个答案吗?我问了这个问题,但没有足够的分数来这样做. (2认同)