inIn my case, I noticed that the routing logic was kicking in if I modified the location hash$location.hash(). theThe following trick worked..
$scope.scrollTo = function(id) { var old = $location.hash(); $location.hash(id); $anchorScroll(); //reset to old to keep any additional routing logic from kicking in $location.hash(old); };