我使用AngularJS进行奇怪的,仅限safari的滚动行为.
每当用户在页面之间翻转时,页面就会被改变,就好像它们是AJAX一样.我知道他们在AngualrJS中,但最终的行为是当用户切换页面时浏览器不会滚动到顶部.
我试图强制浏览器在使用新控制器时滚动到顶部,但似乎没有做任何事情.
我在每个控制器的顶部运行以下JS:
document.body.scrollTop = document.documentElement.scrollTop = 0;
这也是一个仅限Safari的错误,当页面发生变化时,每个其他浏览器都会滚动到顶部.有没有人遇到过类似的问题或想到更好的解决方法?
Ale*_*x C 50
$window.scrollTo(0,0) 将滚动到页面顶部.
我刚刚发现了一个支持动画的好插件(纯angularJS):
https://github.com/durated/angular-scroll
dan*_*ren 19
你可以用这个:
.run(["$rootScope", "$window", '$location', function($rootScope, $window, $location) {
$rootScope.$on('$routeChangeStart', function(evt, absNewUrl, absOldUrl){
$window.scrollTo(0,0); //scroll to top of page after each route change
}}])
Run Code Online (Sandbox Code Playgroud)
或者对于制表符开关,你可以使用$ window.scrollTo(0,0); 在你的控制器中
| 归档时间: |
|
| 查看次数: |
37390 次 |
| 最近记录: |