【发布时间】:2014-07-25 07:30:31
【问题描述】:
我正在将 AngularJS 用于小型 Web 应用程序,但遇到了问题。我正在使用ng-repeat 来填充 div 内的列表。 div 有一个固定的高度并设置为overflow-y: auto,这意味着当列表对于 div 来说太大时会出现一个滚动条。我的问题是,当重新绘制列表时,即支持 ng-repeat 的数据发生变化时,滚动条不会重置到 div 的顶部。相反,它会停留在 ng-repeat 更改之前滚动条所在的任何位置。这是一个非常糟糕的用户体验。我试过以下没有任何运气:
<div id="myList">
<ul>
<li ng-repeat="item in items">{{item}}</li>
</ul>
</div>
<a ng-click="switchItems()">Switch</a>
<script>
function MyApp($scope) {
$scope.switchItems = function() {
$('#myList').scrollTop();
$scope.items = [1, 2, 3, 4]; // new items
};
}
</script>
【问题讨论】:
标签: javascript jquery html css angularjs