【发布时间】:2013-08-15 15:30:35
【问题描述】:
我在使用 AngularJS 时遇到了一种奇怪的、仅限 safari 的滚动行为。
每当用户在页面之间翻动时,页面就会被更改,就好像它们是 AJAX 一样。我知道它们在 AngualrJS 中,但结果是当用户切换页面时浏览器不会滚动到顶部。
我试图在使用新控制器时强制浏览器滚动到顶部,但它似乎没有做任何事情。
我在每个控制器的顶部运行以下 JS:
document.body.scrollTop = document.documentElement.scrollTop = 0;
这也是 Safari 独有的错误,当页面更改时,所有其他浏览器都会滚动到顶部。有没有人遇到过类似的问题或想出更好的解决方法?
【问题讨论】:
-
能否请您发布更多代码,例如控制器数据,可能是您的 routeProvider 的配置设置...等