Как сделать плавную прокрутку до следующего целевого элемента при прокрутке - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь найти аналогичное решение прокрутки к следующему целевому элементу, как здесь: https://alvarotrigo.com/fullPage/#page3

Мой код софта:

let disableClick = false
window.addEventListener('scroll', () => {
  window.onscroll = slideMenu;
  if (window.scrollY > elementTarget.offsetTop) {
    const scrolledPx = (window.scrollY - elementTarget.offsetTop);

    if (scrolledPx > 100 && !disableClick) {          
      const link = document.getElementById('2');          
      link.click();
      disableClick = true
    }
  }
} 

Проблема в том, что при прокрутке доследующий элемент и вернуться вверх, плавная прокрутка отключена.Как я могу включить событие клика, когда у меня есть подобное условие или подобное?:

if (scrolledPx < 100 && !disableClick) {          
  const link = document.getElementById('2');          
  link.click();
  disableClick = true
}

1 Ответ

0 голосов
/ 15 января 2019

Используйте CSS для плавной прокрутки

 html {
      scroll-behavior: smooth;
    }
...