我在这里讨论了一个问题:取消打印后的页面没有调整图表大小。
https://github.com/highslide-software/highcharts.com/issues/1093
我希望重现那里提到的解决方案。基本上,解决方案是在Highcharts中设置全局选项,如下所示:
Highcharts.setOptions({
chart: {
events: {
afterPrint: function () {
alert('called');
Highcharts.charts.forEach(function (chart) {
if (chart !== undefined) {
chart.reflow();
}
});
}
}
}
});
就我而言,页面的工作原理如下:
我尝试在页面加载或ajax调用之后使用上述解决方案。然而,afterPrint从未被调用过。请注意,我将"警告('称为')"有证明。
添加全球afterPrint的正确方法是什么?
问候。
答案 0 :(得分:1)
我现在就开始工作了。我使用的是版本4.0.4,afterPrint没有按预期工作。现在我使用的是最新版本4.1.9,afterPrint按预期工作,没有任何代码更改。
我在页面加载时调用全局设置。
希望这有帮助。
答案 1 :(得分:0)
我通过在我的脚本中添加以下内容,以更简单的方式完成了这项工作
Highcharts.setOptions({
chart: {
events: {
afterPrint: function () {
jQuery(window).resize()
}
}
}
});