2013-05-29 4 views
7

Скажем, у меня большой заголовок, так что директива ng-view отсутствует на странице. перед этим ng-view у меня есть своеобразное меню, которое запускает угловую маршрутизацию и поэтому меняет вид. Моя проблема заключается в том, что в любое время, когда маршрутизация запускается, страница удерживает прокрутку вверх, чтобы частичная часть отсутствовала в окне просмотра.Угловое: отключить прокрутку вверх при изменении вида

вот моя маршрутизация:

angular.module('portfolio', []) 
    .config(function ($routeProvider, $anchorScrollProvider) { 
    $anchorScrollProvider.disableAutoScrolling(); 
    $routeProvider 
     .when('', { 
     templateUrl: 'portfolio/index.html', 
     controller: 'PortfolioListCtrl' 
     }) 
     .when('/portfolio/:project', { 
     templateUrl: 'portfolio/detail.html', 
     controller: 'PortfolioDetailCtrl' 
     }) 
     .otherwise({redirectTo: ''}); 
    }); 

Я $anchorScrollProvider.disableAutoScrolling(); поставил не похоже на работу.

У кого-нибудь есть идея?

ответ

6

Документы немного запутаны в этом вопросе, я помню, что имел ту же проблему. Видимо нг-вид использует сервис $ anchorScroll, так что вы можете отключить его, просто переписав его в модуле:

angular.module('portfolio').value('$anchorScroll', angular.noop); 
+1

Я не люблю это решение. Переопределение всего сервиса - плохая идея:/ –

+0

Любое другое решение @ ΑναστάσηςΑνδρονίδης? – Lucio

Смежные вопросы