私はAngularのものを使用してscrollTo
おり、次のanchorScroll
ようにしています:
app.controller('TestCtrl', function($scope, $location, $anchorScroll) {
$scope.scrollTo = function(id) {
$location.hash(id);
$anchorScroll();
}
});
<a ng-click="scrollTo('foo')">Foo</a>
<div id="foo">Here you are</div>
私の問題は、リンクをクリックするとページがスクロールダウンすることですが、URL のハッシュが変更されるため、50% のケースでページがリロードされます。
Angular がページをリロードしないようにするにはどうすればよいですか?
更新:ここで見つけました
https://groups.google.com/forum/?fromgroups=#!msg/angular/BY2ekZLbnIM/MORF-z2vHnIJ
それ
The $location service broadcasts a $locationChangeStart event. You can observe that and call event.preventDefault() to stop the navigation. Nice!
そのイベントを観察してデフォルトを防ぐ方法を誰でも教えてもらえますか