При клике убирается и исчезает активный класс меню
не могу понять при скроле работает нормально, а вот при клике на меню и до скрола активный класс исчезает потом появляется снизу код а ссылка на пример
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);
});
});
});