Обнаружение прокрутки до якоря - PullRequest
0 голосов
/ 08 ноября 2018

Рассмотрим следующий сценарий:

  • На странице есть привязка, например, <a id='apples'...
  • Пользователь посещает https://example.com/thing.html#apples. Браузер загружает страницу и прокручивает до якоря.
  • Пользователь прокручивает, затем решает, что он хочет снова видеть яблоки, поэтому он щелкает внутри адресной строки, нажимает ввод, и браузер снова прокручивает до якоря яблок.

Вопрос: как мне это обнаружить?

  • Событие scroll может сработать, но тогда мне придется отличить его от других типов пользовательской прокрутки, таких как колесо мыши, клавиатура или даже полоса прокрутки
  • hashchange не стреляет, потому что хэш действительно не изменился
  • Событие load также отсутствует, поскольку страница не нуждается в перезагрузке

Есть ли событие, о котором я не думал?

...