Кликабельная якорная навигация, которая не работает в Google Chrome - PullRequest
0 голосов
/ 17 мая 2019

Я искал решение проблемы с javascript, который работает на IE, Firefox, Safari и Edge.Но когда я хочу использовать его в Chrome, он не работает.

Я пробовал пару решений, которые я нашел здесь, о прокрутке якоря, но ни одна из них не работает, может быть, кто-то может найти решение?Вот код для якоря, который я использовал.

<div class="link"><div class="name">PersoName</div><a class="scroll" href="#NAMEID"></a></div>

И вот где якорь должен пойти

<div class="box" id="NAMEID" style="background:url('https://nsm09.casimages.com/img/2019/02/22//19022209080424648216131014.png')no-repeat center top fixed; background-color: #EEEEEE; -webkit-background-size: cover; -moz-background-size: cover; background-size: cover;">

Если вам нужно увидеть его в действии,мой тест:

https://morganpierce1329.tumblr.com/testperso

1 Ответ

0 голосов
/ 17 мая 2019

Я не уверен, что является основной причиной вашей проблемы, но в поисках я нашел решение для нее .Вы можете добавить следующий код в свой Javascript, и он должен работать нормально (протестировано на консоли Chrome):

$(function() {
   $('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
         }, 1000);
         return false;
       }
     }
   });
 });
...