AngularJS прокрутить вниз начальный

0

У меня есть следующий контейнер div:

<div class="col-md-8 grid-wrapper-div chatHistory">
...
</div>

С помощью CSS:

.chat .chatHistory {
    overflow-y:scroll;
    height: 550px;
}

и если страница загружена, а полоса прокрутки должна быть внизу → я использую AngularJS. Есть ли возможность прокрутки вниз с помощью css или с помощью AngularJS

[РЕДАКТИРОВАТЬ]

Я пробовал это так, но chatHistoryContainer.scrollHeight не определен. Кто-нибудь знает, почему? Изображение 174551

  • 0
    getElementsByClassName не выполняет действия со всеми элементами, такими как селекторы jQuery, он возвращает массив, подобный объекту всех элементов. [elem1, elem2].scrollTop явно недействителен.
Теги:

1 ответ

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

Используйте ngInit, который запускается при рендеринге содержимого и $ timeout, чтобы отложить прокрутку до следующего цикла дайджеста, чтобы дождаться, пока контент будет полностью выполнен.

<div id="chat_history" class="col-md-8 grid-wrapper-div chatHistory" ng-init="scrollToBottom()">
...
</div>

myApp
  .controller(function($scope, $timeout){
    $scope.scrollToBottom = function() {
      $timeout(function(){
        var objDiv = document.getElementById("chat_history");
        objDiv.scrollTop = objDiv.scrollHeight;
      });
    };
  });

Ещё вопросы

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