При клике убирается и исчезает активный класс меню

не могу понять при скроле работает нормально, а вот при клике на меню и до скрола активный класс исчезает потом появляется снизу код а ссылка на пример

var menu_selector = ".top-navigation"; 
function onScroll(){
    var scroll_top =   jQuery(document).scrollTop();
    jQuery(menu_selector + " a").each(function(){
        var hash = jQuery(this).attr("href");
        var target = jQuery(hash);
        if (target.position().top <= scroll_top && target.position().top + target.outerHeight() > scroll_top) {
            jQuery(menu_selector + " a.active").removeClass("active");
            jQuery(this).addClass("active");
        } else {
            jQuery(this).removeClass("active");
        }
    });
}
 
  jQuery(document).ready(function($) {
 
    $(document).on("scroll", onScroll);
 
    $("a[href^=#]").click(function(e){
        e.preventDefault();
 
        $(document).off("scroll");
        $(menu_selector + " a.active").removeClass("active");
        $(this).addClass("active");
        var hash = $(this).attr("href");
        var target = $(hash);
 
        $("html, body").animate({
            scrollTop: target.offset().top
        }, 500, function(){
            window.location.hash = hash;
            $(document).on("scroll", onScroll);
        });
 
    });
 
});

Ответы (0 шт):