I've found some undesired, at least for me, behaviour when the route changes. In the step 11 of the tutorial http://angular.github.io/angular-phonecat/step-11/app/#/phon
Using angularjs UI Router, what I'm doing is this:
.state('myState', { url: '/myState', templateUrl: 'app/views/myState.html', onEnter: scrollContent })
With:
var scrollContent = function() { // Your favorite scroll method here };
It never fails on any page, and it is not global.