Highcharts事件简介

目前为止,我们已经了解了大多数的Highcharts配置,但是还有一部分没有涉及到—事件处理。Highcharts提供了一套事件选项在如下几个领域:图表事件,系列事件,坐标轴基本事件,并且他们通过API调用和用户与图表交互被触发。

Highcharts事件可以通过配置对象的方式定义,当使用API创建图表时会接受对象配置。如:Chart.addSeries,Axis.addPlotLine,Axis.addPlotBand

事件对象通过事件句柄(handler)传递,而事件句柄包含与事件动作有关的鼠标信息和特定的动作数据,比如:event.xAxis[0],event.yAxis[0]被作为参数存储在chart.events.click的句柄中.在所有事件函数中,‘this’关键字指向事件函数基于的Highcharts控件。如:‘this’在chart.events.click中指向chart对象,而在plotOptions.series.events.click指向series对象。

下面是Highcharts事件列表:

  • charts.events:addSeries,click,load,redraw,selection
  • plotOptions..events:click,checkboxClick,hide,mouseOver,mouseOut,show

还有一种选择,我们可以将事件选项定义为一系列数组: series [ { events:{ click:function { … },….} } ]


  • plotOptions..point.events:click,mouseOver,mouseOut,remove,select,unselect,update

可以这样定义数据点的事件: series [ { point: {revents:{ click: function(){…} },…} } ] 至于在serie中为一个特定的数据点定义事件,如下所示: series [ { data: [ { events: { click: function(){…}, } } ] } ]


  • x/yAxis.events:setExtremes
  • x/yAxis.plotBands[x].events and
  • x/yAxis.plotLines[x].events:click,mouseover,mousemove,mouseout

Hicharts在线文档提供了全面的参考和大量示例,强烈建议您查阅在线文档。现在没有必要再重复相同的练习了.取而代之,我们会建立两个稍微大的示例来全面使用Highcharts事件,并展示这些事件在一个应用中是如何协作的。由于完整的示例代码较多,所以这里仅列出一些相关部分。当然完整示例代码可以在此找到: http://joekuan.org/Learning_Highcharts/Chapter_8/Example_1.html

EOF