Прокрутите к началу md-virtual-repeat

0

Я пытаюсь добавить кнопку "прокрутка вверх страницы" внутри контейнера md-virtual-repeat. В настоящее время я использую $ anchorScroll. Я установил хэш на стол (я попытался установить хэш внутри и снаружи контейнера повтора), и md-virtual-repeat настроен на повторение tr. Когда кнопка нажата, таблица только прокручивает один элемент и останавливается, она не прокручивается полностью до вершины. Есть идеи?

Я думаю, что это может быть из-за того, что браузер считает, что нужно просто прокручивать один td, чтобы достичь хэша, потому что это то, что показано в DOM, но на самом деле ему нужно прокручивать больше.

Заранее спасибо!

    <md-virtual-repeat-container flex>
     <table>
      <thead id='scrollHash'>
       <tr><th></th><tr>
      </thead>
      <tbody>
       <tr md-virtual-repeat='data in repeatData'>
        <td></td>
      </tbody>
     </table>
    </md-virtual-repeat-container>
    <md-button class='md-fab' ng-click'$scope.gotoTop()'>Top</md-button>
Теги:
angular-material
angularjs-ng-repeat
material-design
ng-repeat

1 ответ

2
Лучший ответ

Вы можете использовать md-top-index (подробнее здесь).

Попробуй это:

В html:

<md-virtual-repeat-container md-top-index="topIndex">...</md-virtual-repeat-container>
<md-button class='md-fab' ng-click="gotoTop()">Top</md-button>

В контроллере:

$scope.gotoTop = function()
{
    $scope.topIndex = 0;
}

Код здесь.

Надеюсь, это поможет.

  • 0
    твой рок! Спасибо, слишком увлеклись другими вещами и разместили md-top-index. Еще раз спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню