Задать вопрос
@eugene159

Как имитировать событие ссылки-якоря?

При переходе по ссылке-якорю на другой сайт якорь срабатывает. Пример:
https://ru.wikipedia.org/wiki/HTML5#%D0%A0%D0%B0%D...

Однако если перейти, немного поскроллить страницу, а потом перезагрузить ее (нажать F5 или в адресной строке выделить ссылку и нажать Enter), то якорь уже не будет срабатывать. Но если открыть эту ссылку в новой вкладке, то якорь сработает.

Как реализовать такой механизм средствами JS? Что это за событие(я)? Что это за проверка?
  • Вопрос задан
  • 180 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Avilona
@Avilona
Вы можете смотреть на url при загрузке страницы, и если там есть нужный вам якорь, то смещать к нему, как-то так:
var urlHash = document.querySelector(window.location.hash);
var top = window.scrollY + urlHash.getBoundingClientRect().top;
window.scrollTo({ top: top });
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 17:26
5000 руб./за проект
18 дек. 2024, в 17:23
1500 руб./за проект
18 дек. 2024, в 16:42
2000 руб./за проект