highcharts如何在单击重置缩放按钮事件中捕获和插入逻辑

时间:2013-10-19 06:14:29

标签: javascript jquery highcharts

我正在使用highcharts并想在点击重置缩放按钮事件中插入一些逻辑,但我没有找到一个非常好的方法。在StackOverflow中搜索并找到最佳答案:

event.srcElement.firstChild.data == "Reset zoom"

但这种方式有一个问题,即当我们点击“重置缩放”按钮的一角时,不会触发事件。只有当我们点击文本的tSpan'重置缩放'时,这种方式才有效。想问一下是否有另一种解决方案。

2 个答案:

答案 0 :(得分:11)

只需使用setExtremes事件,请参阅:http://jsfiddle.net/BlackLabel/pjy9682s/3/

var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        zoomType: 'x'
    },
    xAxis: {
        events: {
            setExtremes: function (e) {
                if(typeof e.min == 'undefined' && typeof e.max == 'undefined'){
                     console.log('reset zoom clicked');   
                } else {
                     console.log('zoom-in');   
                }
            }
        }
    },
    series: [{
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 29.9, 71.5, 106.4, 129.2, 144.0, 176.0]
    }]
});

答案 1 :(得分:5)

Highcharts提供了一个名为selection

的事件
chart:{
  events: {
    selection: function() { /* your code here */ }
  }
}

这个小提琴将帮助你http://jsfiddle.net/M7cfm/