如何修复主页主菜单上损坏的滚动 ID?

How to fix broken scroll-to ID on main menu of homepage?

我已经接手维护贵乐团网站的任务。不幸的是,之前的维护者安装了很多 (Wordpress)-Plugins,所以我很难弄清楚哪个插件实际用于什么。

我必须弄清楚,为什么在我们的主菜单中滚动到 link 是坏的,但我什至不知道从哪里开始。 HTML 看起来正确:

<a href="#orchester-neu">Orchester</a> 

而 link https://www.akkordeonorchester-muenchen.de/#orchester-neu 工作得很好。

所以我查看了 Google Chrome 控制台,它会抛出类似

的违规警告

[Violation] 'requestAnimationFrame' handler took 107ms

据我所知,"scroll-to" 是由 jQuery "animate" 函数完成的,因此这可能是从哪里开始解决问题的提示。但是该网站使用了 Simple Key Theme 的子主题,据我所知,到目前为止还没有自定义代码。我不介意添加自定义代码,但正如我所说,我不知道从哪里开始查找错误。

尽管它是一个 wordpress 网站,但我认为这个问题与 Wordpress 无关,而是与某些 JavaScript / jQuery -脚本。 我在上面的网站上提供了一个link,所以请不要犹豫,自己看看现场网站。如果有任何提示,我会很高兴!

谢谢!

添加此 jQuery 代码,它会正常工作...

jQuery(document).ready(function($) {
    jQuery( "#primary-menu-container .menu-item a[href^='#']").on( 'click', function ( e ) {
        e.preventDefault();
        var hash = this.hash;
        var scrlTopOff = jQuery('#primary-menu').innerHeight();
        jQuery( 'html, body' ).animate( {
            scrollTop: jQuery( hash ).offset().top - scrlTopOff
        }, 700, function () {
        });
    });
});