Как установить переменную, хранящую идентификатор строки как элемент jQuery, чтобы можно было использовать функцию .offset ()? - PullRequest
0 голосов
/ 20 марта 2020

У меня есть этот код, который по щелчку ссылки якоря должен получить га sh из URL, а затем прокрутить до точки привязки (существует элемент с идентификатором этого га sh) с некоторым размером смещения для фиксированный заголовок.

anchorLink представляется неопределенным как .offset (). top возвращает "не удается прочитать свойство undefined".

Выход anchorLink равен #my-anchor, что правильно - может быть, это просто не объект jQuery, и поэтому он не может получить смещение и вершину?

$(window).on('hashchange', function(e) {

    console.log(location.hash);
    var anchorLink = $( location.hash.replace(/^#/, '') );
    var offsetSize = $(".site-header").innerHeight();
    $("html, body").animate({scrollTop: anchorLink.offset().top - offsetSize }, 500);

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...