高图:后续图表擦除先前的图表

时间:2018-06-29 08:57:40

标签: javascript highcharts

我在通过异步Ajax调用动态创建Highcharts时遇到问题:有时后续图表会从其他容器中删除之前的图表。这是方案: 1.从ajax异步数据同时创建6至8个图表。每个图表都分配给一个动态数组,并在渲染之前销毁:

if (charts[chID] != null) {
    charts[chID].destroy();
} 

然后我们创建一个图表:

charts[chID] = new Highcharts.Chart(chartOptions);

正如我提到的,所有这些图表都是通过异步ajax调用同时创建的。 问题是第一次运行后缺少某些图表;之后,所有图表都将正确呈现。调试代码表明,丢失的图表实际上是创建的,但是随后的图表将其删除。 Chrome开发者的屏幕截图。工具: 三个图表(4,5,6)都可以 Three charts (4,5,6) are OK

然后添加另一个图表(1),并删除图表4: chart (1) erases previously rendered chart (4)

这些“丢失”的图表非常不规则-有时仅丢失一张图表,有时丢失2或3。第二次运行例程总是可以解决问题,并且所有图表都可以正确显示。我想这是因为数组图表[]已经创建。

我尝试跳过图表销毁功能,将图表数组更改为对象,之前启动了数组图表[],但没有任何帮助。

请注意,该代码不会产生任何错误,也不会丢失div。

任何建议在哪里挖?

谢谢!

0 个答案:

没有答案