Плавная прокрутка с помощью jQuery - прокрутка до хэша ID на другой странице - PullRequest
0 голосов
/ 05 июля 2019

Я использую этот маленький код jQuery для плавной прокрутки. Прокрутка должна остановиться на 70px сверху, и это происходит на той же странице. Но если я нахожусь на другой странице и нажимаю ссылку на хеш, который приводит к идентификатору на другой странице, прокрутка не останавливается на 70px, но прямо сверху.

Как этого избежать?

$(function() {
    const offset = 70;
    $('a[href*=#]:not([href=#])').click(function() {
          if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
        var target = $(this.hash);
        target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
            if (target.length) {
              $('html,body').animate({
                scrollTop: target.offset().top - offset
              }, 500);
              return false;
            }
          }
        });
      });
...