场景: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}); } } } },