我的 DOM 上有这段代码,用于初始化我表上的当前日期。
<table id="daysTableLeft" class="table table-hover" ng-init="getHorraire(pickDateRow,$index,0)">
<tr ng-repeat="fd in getFullDayDate track by $index"
ng-click="getHorraire(fd.myDate,$index,1)"
style="cursor:pointer" ng-model="pickDateRow"
ng-class="{activeLink: $index===selectedIndex, weekend: fd.dayName=='Samedi'|| fd.dayName=='Dimanche'}">
<td style="font-size:14px;" id="{{fd.$index}}"> {{fd.fullDate}}, 2018</td>
</tr>
<tr><td style="height:80px;"></td></tr>
</table>
例如,如果今天的日期是 30/03/2018,我知道第 30 个日期位于底部元素。然后我必须手动滚动以查看今天的日期。
是否可以自动滚动到当前日期?
最佳答案
按照@Bryan 的建议,您可以为当前日期创建一个 id 并使用 anchor-scroll
滚动到当前日期。
<div ng-repeat="item in dateArray">
<span id="{{(item.getDate()==today.getDate())?'scrollDate':''}}">
{{item | date}}
</span>
</div>
您必须将$location
和$anchorScroll
注入(inject)您的 Controller 。
工作 jsfiddle link供大家引用。
注意:$anchorScroll
不提供平滑滚动或不适用于 ngAnimate
。如果你想要平滑滚动,你必须使用第三方指令。
关于jquery - AngularJs:如何将表格滚动到当前的 ng-init 日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49455169/