HighCharts-highcharts resetZoom点击事件

时间:2022-12-09 10:14:47

场景:zoom缩放功能:

选中x轴的一段区域后,需要解除x轴已设定的max值对zoom缩放功能的影响;

点击'reset zoom'后,又需要将max值重新赋值给x轴。

查遍highcharts api,终于找到一个入口可以捕获'reset zoom'的点击事件。

点击'缩放重置'和选中x轴的一段zoom区域时,都会触发selection事件。

如果是选中x轴的一段zoom区域,event.xAxis中会保存选中zoom区域的起点值(min)和结束点值(max).

如果是点击'缩放重置',event.xAxis的值则是undefined.

由此可以区分是点击了'缩放重置',还是选择了一段zoom区域。

代码如下:

        chart: {
renderTo : 'test_container',
type : 'scatter',
zoomType : 'x',
events: {
selection : function (event) {
// 获取操作chart
var chart = .....;
// 点击缩放重置
if(event.xAxis == undefined){
// x轴最大值设为xMaxValue
chart.xAxis[0].update({ max: xMaxValue});
}
// 选择x轴区域
else{
// x轴最大值设为null
chart.xAxis[0].update({ max: null});
}
}
}
},