おそらく$anchorScroll()を使えば解決するはずです。
マニュアル:https://docs.angularjs.org/api/ng/service/$anchorScroll
以下の様に、注入してコントローラーで呼ぶと、$location.hash()で見つかるIDを持つ要素までスクロールするようになります。
lang
1app.controller('TestCtrl', function($scope, $location, $anchorScroll) {
2$scope.scrollTo = function(id) {
3$location.hash(id);
4$anchorScroll();
5}
6});
7
8<a ng-click="scrollTo('foo')">hoge</a>
9
10<div id="foo">Hoge!!</div>
・ルーティングを使わない場合
angularルーティングを通常どおり設定し、以下のコードを追加します。
lang
1app.run(function($rootScope, $location, $anchorScroll, $routeParams) {
2//when the route is changed scroll to the proper element.
3$rootScope.$on('$routeChangeSuccess', function(newRoute, oldRoute) {
4$location.hash($routeParams.scrollTo);
5$anchorScroll();
6});
7});
するとリンクが以下のようになります。
lang
1<a href="#/test?scrollTo=foo">Hoge!!</a>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。