有人知道如何在ng-repeat中制作anchorScroll吗?

时间:2014-01-15 13:12:52

标签: angularjs angularjs-ng-repeat angularjs-ng-include

我需要知道如何在ng-repeat菜单中制作一个anchorScroll到不同的ID。

<li data-ng-repeat="page in pages">
   <a href="{{href}}">{{ page.title }}</a>
</li>

<div id="1">One</div>
<div id="2">Two</div>

谢谢!

2 个答案:

答案 0 :(得分:0)

在ng-repeat中,您可以使用index为每个元素分配不同的ID。

<li data-ng-repeat="page in pages">
    <a id="link-{{page.index}}" href="{{href}}">{{ page.title }}</a>
</li>

索引将随pages中的每个项目递增。我放link-的id中的部分是可选的;你可以用这种方式添加任何前缀或后缀。

答案 1 :(得分:0)

你应该可以做这样的事情。我不知道你的对象是什么样的,但这应该会有所帮助。

HTML

<li data-ng-repeat="page in pages">
   <a href="" ng-click="scrollTo(page.index)">{{ page.title }}</a>
</li>

<div id="1">One</div>
<div id="2">Two</div>

控制器

$scope.pages = [
  { title: "test1", index: 1},
  { title: "test2", index: 2}
];
$scope.scrollTo = function(id) {
  document.getElementById(id).scrollIntoView();
};