1

我的主要 HTML 中有 highcharts 图形。我把它放在一个小 div 中,所以某些部分的图形没有显示出来。当用户单击一个按钮时,它会在颜色框中作为弹出窗口打开,但不会刷新其大小。当我单击以使用 Firebug 进行检查时,它突然刷新其大小并且一切正常。当我关闭颜色框时它仍然很大,我也看不到图形的很多部分。

是否有任何想法关于如何刷新 Highcharts 图形以及为什么当我单击使用 Firebug 的检查元素时它会刷新自身(我想要什么)?

PS:当我调整与 Firebug 无关的窗口大小时,它可以工作。我的似乎有同样的问题:https ://github.com/highslide-software/highcharts.com/issues/472

4

2 回答 2

1

我在加载数据并关闭颜色框后调用了 window.resize,它解决了问题。

于 2013-02-01T09:28:28.243 回答
0

没有一个例子来看看它很难说,但这是我认为正在发生的事情:

首先检查选项reflow是否设置为 true。如果是,那么 Highcharts 将监视 window.resize 事件并在发生调整大小时重绘自身。我的猜测是,当激活 Firebug 时,窗口会调整大小并重新绘制图表。

如果要手动设置图表的新大小,可以使用 api 方法setSize()。要仅重绘图表,您应该使用redraw()

于 2013-02-01T09:04:40.620 回答