2011-08-31 15 views
2

我在最近的项目中使用了https://github.com/browserstate/history.js来管理富含ajax网站中的状态更改。防止Chrome将滚动条位置设置为历史状态更改上的最后一个

Chrome的表现有时非常令人讨厌的行为,它决定滚动条重新定位状态变化事件后,一些任意位置。我没有遇到任何其他浏览器的这个问题。

有没有人有任何建议?我会发布代码,但我不确定哪些部分是相关的,我希望有一个明显的解决方案来解决这个问题。

+0

你有没有找到解决这个问题的方法?我有同样的问题,认为它可能与popstate事件有关 –

回答

0

有一些明显的解决方法。如果这是你想要的,滚动到顶部,或者添加一个字段到数据对象来存储滚动位置并自己恢复。如果这是一个Chrome错误,请解决它;如果这是您不喜欢的功能,请解决它;如果这是你需要用三行代码实现的东西,那就去解决它吧。

+0

问题是,在其他调用'scrollTop'之后,Chrome显示出这种行为。我通过使用hacky绝对定位和'setTimeout'回调的组合来“解决”它,看起来好像滚动条一点都没有移动。 – Finbarr

+0

奇怪。对不起,垃圾回答。 –

+1

不是垃圾回答,只是一个奇怪的问题。我要写一些最小的HTML和JavaScript来演示这个问题。 – Finbarr