Плавная прокрутка к разделу хэш URL и атрибут данных - PullRequest
0 голосов
/ 30 января 2019

У меня есть ссылки в навигации, которые при нажатии должны открыть новую страницу и прокрутить до определенного раздела.К ссылке будет добавлен хеш, который должен отображаться с идентификатором данных раздела.

HTML Это разметка навигационной ссылки

 <ul class="menu-list-level-2">
     <li class="no-submenu">
    <div class="menu-item"  data-link="navigation-1-1">
      <a href="home.html#vision" class="sub-category active">
      Our Brand
       </a>
      </div>
     </li>
    </ul>

Это разметка дляразделы, которые открытая страница должна прокручивать до

<div class="section-to-scroll" data-id="vision">
    </div>

Примечание: у меня не может быть идентификаторов в разделах, поэтому я должен иметь дело с идентификаторами данных.

Js

var hashURL = location.hash
smoothScrollTo(hashURL)

function smoothScrollTo(hashURL){
    if (hashURL != "" && hashURL.length > 1) {
        var hashText = hashURL.replace("#","")
        var targetMap = '[data-id="' + hashText + '"]'
        $("html, body").animate({
            scrollTop: $(targetMap).offset().top
        }, 500);

    }
}

Я пытаюсь добиться этого способом, описанным выше. Это почему-то не прокручивает до нужного раздела.

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