Задать вопрос
Ivseti
@Ivseti
Фронтенд HTML, CSS и немного JS с PHP

Как добавить отступ при плавной прокрутке на JS?

Есть который, который делает плавную прокрутку на JavaScript, он работает, все отлично. Как в него добавить отступ к примеру 100px сверху ?

jquery - возможности подключить нет, нужно именно на JavaScript.

// Найти все ссылки начинающиеся на #
const anchors = document.querySelectorAll('a[href^="#"]')

// Цикл по всем ссылкам
for(let anchor of anchors) {
  anchor.addEventListener("click", function(e) {
    e.preventDefault() // Предотвратить стандартное поведение ссылок
    // Атрибут href у ссылки, если его нет то перейти к body (наверх не плавно)
    const goto = anchor.hasAttribute('href') ? anchor.getAttribute('href') : 'body'
    // Плавная прокрутка до элемента с id = href у ссылки
    document.querySelector(goto).scrollIntoView({
      behavior: "smooth",
      block: "start"
    })
  })
}
  • Вопрос задан
  • 150 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 10:44
130000 руб./за проект
18 дек. 2024, в 10:02
7000 руб./за проект
18 дек. 2024, в 09:56
8000 руб./за проект