Как заставить прокрутку в переполнении-y div

Я пытаюсь заставить смещение прокрутки в div, содержащем список ngfor

Я пробовал это на div, который как переполнение-y:

@ViewChild('list') listRef: ElementRef;

затем при нажатии я пробую это с каким-то журналом, чтобы убедиться, что он называется

this.listRef.nativeElement.offsetTop = 500;

Ничего не происходит, есть идеи, как я могу этого добиться?

РЕДАКТИРОВАТЬ :

HTML:

<div
  #gridContainerId
  class = "gridContainer">
  <a *ngFor = "let item of images;">
     <img src = "{{getImage(item)}}"/>
  </a>
</div>

css:

.gridContainer {
  height: 90vh;
  overflow-y: scroll;
}

составная часть :

@ViewChild('gridContainerId') ref: ElementRef;

this.store.pipe(
      select(fromImages.getImages),
      takeWhile(() => this.componentActive)
    ).subscribe(imagesItems => {
        this.images = imagesItems;
        updateScroll();
      }
    );

updateScroll(){
  this.ref.nativeElement.scrollTop = this.ref.nativeElement.scrollHeight;
}
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
94
1

Ответы 1

Я недавно был в вашем сценарии, когда нажимаю определенную кнопку, div прокручивается вниз, я добился этого с помощью этого кода:

this.messagesContainer.nativeElement.scrollTop = this.messagesContainer.nativeElement.scrollHeight;

свойство scrollTop позволяет указать количество пикселей, которые будут прокручиваться от верхней части представления. а свойство scrollHeight предназначено для получения общей высоты div.

Я пробовал это на контейнере, у которого есть переполнение, и ничего не происходит: /

An-droid 25.07.2018 17:57

Я предполагаю, что проблема здесь в том, что вы прокручиваете перед визуализацией представления, вам нужно добавить его внутри setTimeout, чтобы он выполнялся после визуализации представления и принимал его фактическую высоту

Raed Khalaf 25.07.2018 18:00

Я могу поделиться фрагментами кода, но я не могу включить все, и мне приходится его переименовывать. Вопросы конфиденциальности.

An-droid 25.07.2018 18:05

Я пробовал с таймаутом 2000 мс, тот же результат ничего не происходит, список загружается и отображается менее чем за 100 мс

An-droid 25.07.2018 18:07

Другие вопросы по теме