Window Highcharts 重绘时 scrollY = 0()

Window scrollY = 0 on Highcharts redraw()

我正在使用 Highcharts 3.0.2

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

文档就绪时,js 调用 $('#chart).highcharts(options1)很高兴 生成了图表 1。

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

单击后,很高兴 生成图表 2(替换 div#chart 中的图表 1)。

然而!生成图表 2 时,某些东西将 window.scrollY 重置为零 。换句话说,如果用户在单击时从页面顶部向下滚动,则 window 会移回顶部。

是什么导致了这种行为,我该如何阻止它?

如果我想让它看起来好像页面已刷新,我会刷新它!啊啊!!!

Fiddle:jsFiddle

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

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

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

$(window).scrollTop(tempScrollTop);

这是DEMO