Highcharts - 更新系列会导致与工具提示相关的错误(mouseOver)

时间:2014-10-15 17:33:23

标签: javascript highcharts

可以看出in this simple fiddle,在数据点上触发mouseOver事件并更新系列'通过series.update()的属性会导致js错误:

Uncaught TypeError: Cannot read property 'tooltipOptions' of null

代码:

plotOptions: {
         series: {
             cursor: 'pointer',
             point: {
                 events: {
                     mouseOver: function () {
                         console.log('why does an error appear?');
                         this.series.update({
                             lineWidth: 10
                         });
                     },
                     mouseOut: function () {
                         console.log('bla');
                     }
                 }
             }
         }
     },

我做错了什么?谢谢你的信息。

将工具提示设置为enabled: false时,错误消息为:

Uncaught TypeError: object is not a function highcharts.js:300
  r.onMouseOver                              highcharts.js:300
  Wa.runPointActions                         highcharts.js:158
  Wa.onContainerMouseMove                    highcharts.js:165
  b.onmousemove                              highcharts.js:167

2 个答案:

答案 0 :(得分:2)

问题在于,当您使用mouseOver事件时,您会多次捕获此事件,因此系列更新也会多次调用。你应该考虑另一个像click这样的事件,这个事件将被调用一次。

答案 1 :(得分:0)

您可以先将enableMouseTracking选项设置为false,以消除错误:

chart.options.plotOptions.pie.enableMouseTracking = false;