Highcharts redraw()上的窗口scrollY = 0

时间:2015-01-27 22:20:01

标签: javascript jquery highcharts

我正在使用Highcharts 3.0.2

我有一个div#图表和两个js变量var options1 = {...}, options2 = {...}。这些包含不同的highcharts选项(图表1和2,比方说)。

在文档就绪时,js调用$('#chart).highcharts(options1)愉快地生成图表1。

我有一个调用$('#chart').highcharts(options2)的点击事件监听器。

点击后,图表2 愉快地生成(替换div#chart中的图表1)。

无论其!生成图表2时,会将window.scrollY重置为零。换句话说,如果用户在点击时从页面顶部向下滚动,则窗口会移回到顶部。

导致此行为的原因是什么,如何阻止它?

如果我希望它看起来好像页面刷新了,我会刷新它! AHHH !!!

小提琴: jsFiddle

1 个答案:

答案 0 :(得分:2)

您可以像这样保存滚动位置:

var tempScrollTop = $(window).scrollTop();

然后在更改图表和页面标题后,将其重新设置:

$(window).scrollTop(tempScrollTop);

这里是DEMO