我已经使用AngularJS建立了一个网站,我不需要使用路由,所以它没有实现。我希望能够根据锚点跳转到页面中的某个位置,因此我在导航栏中设置了一个链接:
<a href="/services#/myAnchor">Jump to anchor</a>
我放得更远:
<a name="/myAnchor">
但它不起作用,它必须与AngularJS有关,但由于我没有使用路由,我不知道它是什么。我尝试使用#myAnchor而没有/但Angular似乎在页面加载时将其放入,但无论如何都不起作用。
任何想法如何让页面锚点基本再次起作用?
答案 0 :(得分:3)
您正在寻找$anchorScroll:
<div id="scrollArea" ng-controller="ScrollController">
<a ng-click="gotoBottom()">Go to bottom</a>
<a id="bottom"></a> You're at the bottom!
</div>
angular.module('anchorScrollExample', [])
.controller('ScrollController', ['$scope', '$location', '$anchorScroll',
function ($scope, $location, $anchorScroll) {
$scope.gotoBottom = function() {
// set the location.hash to the id of
// the element you wish to scroll to.
$location.hash('bottom');
// call $anchorScroll()
$anchorScroll();
};
}]);