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

问题描述 投票:0回答:1

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

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

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

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

所以我查看了 Google Chrome 控制台,它会抛出像这样的违规警告

[违规] 'requestAnimationFrame' 处理程序耗时 107 毫秒

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

尽管它是一个 WordPress 网站,但我认为这个问题与 WordPress 无关,而是与某些 JavaScript / jQuery -Script.

jquery wordpress menu jquery-animate scrollto
1个回答
1
投票

添加这个 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 () {
        });
    });
});
© www.soinside.com 2019 - 2024. All rights reserved.