Javascript Highcharts动画事件完成了吗?

Javascript Highcharts动画事件完成了吗?,javascript,highcharts,dom-events,Javascript,Highcharts,Dom Events,在重画Highcharts时,是否有任何方法可以在动画完成时打开事件侦听器?据我所见,一个重画事件在发生更改时立即触发,而无需等待动画。或者,当图表变得静止时,也许还有其他方法可以等待 此外,是否可以将事件侦听器添加到已呈现的图表中(例如,通过addEventListener,而不是通过JSON配置)?您可以捕获动画事件并设置完整的功能 plotOptions: { series: { animation: { comple

在重画Highcharts时,是否有任何方法可以在动画完成时打开事件侦听器?据我所见,一个
重画
事件在发生更改时立即触发,而无需等待动画。或者,当图表变得静止时,也许还有其他方法可以等待


此外,是否可以将事件侦听器添加到已呈现的图表中(例如,通过
addEventListener
,而不是通过JSON配置)?

您可以捕获动画事件并设置完整的功能

plotOptions: {
        series: {
            animation: {
                complete: function () {
                    console.log('a1');
                }
            }
        }
    },

动画完成后,另一个事件仅触发一次:

  plotOptions: {
    series: {
      animation: {
        complete: function () {
          console.log('a1 - fired after animation of each element');
        },
        events: {
          afterAnimate: function (ev) {
            console.log('fired only once for each series');
          }
        }
      }
    }
  }
可以对chart.redraw的动画参数使用“complete”回调

例如:

chart.redraw({
    complete: function(){
      console.log("Animation completed");
    }
});

但总的来说,你的目标是什么,为了什么目的,你需要举办“趣味动画”活动?在高层次上,我正在为一款使用Highcharts的产品编写Selenium automation,我想不出有多少方法可以等到图表渲染后才变为静止。由于各种各样的图表对于某些DOM更改来说不是很可行,但是如果没有办法连接事件侦听器,我将不得不这样做。谢谢。是否有任何方法可以在图表呈现后动态添加此事件侦听器?类似于$('#container').on(“plotOptions.series.animation.complete”,function(){…});您可以尝试使用series.update({animation:{//code}})您应该能够根据Sebastian的回答捕获动画事件,但这是不可靠的,不应该使用。在Chrome44和IE11中,张贴的小提琴本身只工作一半的时间,另一半的时间触发两次事件,尽管我们只有一个系列。目前还没有好的方法来做到这一点。正在等待Highcharts修复错误。您有没有不使用我的解决方案的示例?然后我将验证并请求可能存在的bug(如果存在)。属性“events”应该在“series”中,而不是在“animation”中