在 Google Chrome 上不起作用的可点击锚导航

Clickable Anchor Navigation that doesn't work on Google Chrome

我一直在寻找 javascript 问题的解决方案,该解决方案适用于 IE、Firefox、Safari 和 Edge。但是当我想在 Chrome 上使用它时,它不起作用。

我已经尝试了一些我在这里找到的关于锚点滚动的解决方案,但是 none 有效,也许有人可以找到解决方案?这是我一直在使用的锚点代码。

<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

我不确定你的问题的根本原因是什么,但我正在搜索 I found a fix for it。您可以将以下代码添加到您的 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;
       }
     }
   });
 });