如何让链接片段也滚动到Angular的页面顶部?

时间:2014-05-13 23:45:49

标签: javascript html angularjs

我有一个单页应用程序与Angular,我的链接片段有问题:

<a href="/#/search">Search</a>

点击此处将我带到右侧页面,但保留了我的滚动位置。我希望它滚动到页面顶部,所以我目前的解决方法是:

<a href="" ng-click="goToSearch()">Search</a>

在控制器内部:

$scope.goToSearch = function() {
    $location.path("/search");
    window.scrollTo(0,0);
}

有没有更直接的方法来做到这一点?我有4-5个这样的链接,并且必须在多个控制器中放置类似于goToSearch的功能。

2 个答案:

答案 0 :(得分:0)

如果您使用的是Angular UI路由器,则需要将ui-view元素的自动滚动属性设置为 false

<div ui-view="myview" autoscroll="false"></div>

来源:http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.directive:ui-view

答案 1 :(得分:0)

也许这可以帮助http://www.doodlekit.com/blog/entry/55645/auto-scroll-down-links-internal-anchors#toplink

假设您要链接的视图也有链接